我运行该页面并出现此错误。我仍然无法找出问题出在哪里:
错误:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 2 行的 'right,createtime) VALUES ('test10', 1, 1, now())' 附近使用的正确语法
foreach($array as $value){
//insert record
$sql2 = "INSERT INTO projectright
(generalusername,projectid,right,createtime)
VALUES
('$_POST[username]',
".$value.",
1,
now())";
if (!mysql_query($sql2,$con))
{
die('Error: ' . mysql_error());
}
}
最佳答案
right
是保留关键字
你应该用这样的反引号来转义
INSERT INTO projectright
(generalusername,projectid,`right`,createtime)
.....
.....
看看reserved keywords按列创建/播放时,并通过反引号转义它们。
试试这个:
foreach($array as $value){
$sql2 = "INSERT INTO projectright
(generalusername,projectid,`right`,createtime)
VALUES
(".$_POST['username'].",
".$value.",
1,
now())";
if (!mysql_query($sql2,$con))
{
die('Error: ' . mysql_error());
}
}
- 正如草莓所说:最好不要使用保留关键字。
关于foreach循环中mysql语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21849700/