即使它是正确的,插入查询也不起作用

时间:2014-04-24 06:07:14

标签: php mysql sql

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第2行“,”,“,”,“)附近使用正确的语法

运行我的php文件时出现上述错误。

我的插入查询是

$updateUserCanvas="insert into  user_canvas(cns_id,course_id,context_id,email_id,resource_id) values(".$canvasId.",".$courseId.",'".$contextId."','".$email."','".$resourseid."')";

cns_id,course_id是整数数据类型和context_id,电子邮件是varchar,resource_id是文本数据类型

我搜索了这个问题并尝试添加 mysql_real_escape_string

$updateUserCanvas="insert into user_canvas(cns_id,course_id,context_id,email_id,resource_id) values(".$canvasId.",".$courseId.",'".mysql_real_escape_string($contextId)."','".mysql_real_escape_string($email)."','".mysql_real_escape_string($resourseid)."')";

但仍然无法正常工作。我不知道在哪里误会。非常感谢任何帮助。谢谢。

2 个答案:

答案 0 :(得分:0)

你的$courseId出了问题,可能是某些字符串而不是int。试试这个字符串:

$updateUserCanvas="insert into user_canvas (cns_id,course_id,context_id,email_id,resource_id) values ('{$canvasId}','{$courseId}','{$contextId}','{$email}','{$resourseid}')";

答案 1 :(得分:0)

试试这个

$updateUserCanvas="insert into user_canvas(cns_id,course_id,context_id,email_id,resource_id) values('".$canvasId."','".$courseId."','".addslashes($contextId)."','".addslashes($email)."','".addslashes($resourseid)."')";