When doing a simple insert into an MYSQL database, I get this error
“字段列表”中的“未知列'Af452OtQa'”
'Af452OtQa'是我试图插入到'serialnum'列中的值所有变量都是从上一页的POST值设置的,除了这个字段之外都是urlencoded,我创建的值是因此,知道它不会有任何字母数字。
$insertSQL = sprintf("INSERT INTO Presentations ('serialnum', 'docurl', 'tracker', 'recipient', 'last_accessed') VALUES (%s, %s, %s, %s, %s,)",
$sn,$doc,$trackr,$recip,$lastacc);
答案 0 :(得分:2)
SQL语句中是否没有额外的逗号?
您需要在values子句中使用引号,而不是insert
的列名部分$insertSQL = sprintf("INSERT INTO Presentations "+
"(serialnum, docurl, tracker, recipient, last_accessed) "+
"VALUES ('%s', '%s', '%s', '%s', '%s')",
$sn,$doc,$trackr,$recip,$lastacc);
另外:您是否考虑过使用绑定变量,因为您的代码容易受到SQL注入攻击。