文章引用自https://www.cnblogs.com/mafeng/p/5834175.html
本文章為個(gè)人的學(xué)習(xí)備忘
很多人在用php+MySQL做網(wǎng)站往數(shù)據(jù)庫插入數(shù)據(jù)時(shí)發(fā)現(xiàn)如下錯(cuò)誤:
注冊(cè)失敗!Unknown column '1a' in 'field list'
[圖片上傳失敗...(image-d43932-1521629215661)]
結(jié)果發(fā)現(xiàn)用數(shù)字提交是沒有問題的,其他如char型就有問題了刚陡。
相信小伙伴又堅(jiān)信SQL語句沒寫錯(cuò)柠新,那么問題出在哪了七咧。
我們來看下我的SQL語句:
--往user表(user和pass列)插入數(shù)據(jù)深浮,
$sql="INSERT INTO user(user,pass) values($user,$pass)";
當(dāng)我們?nèi)鏸nt型數(shù)據(jù)時(shí)間,sql在數(shù)據(jù)庫執(zhí)行的是
insert into user(user,pass) values(001,001);
然而當(dāng)執(zhí)行char型號(hào)數(shù)據(jù)時(shí)蚕断,SQL語句變成了:
insert into user(user,pass) values(abc,abc);
現(xiàn)在大家能看出問題了吧韵吨,原因是char型要加''符號(hào)。
我們將SQL語句改為:
$sql="INSERT INTO user(user,pass) values('".$user."','".$pass."')"; (單引號(hào)里面是雙引號(hào), 雙引號(hào)里面是.)
即可讽营。