插入表中的php和mysql问题

时间:2013-12-03 12:31:33

标签: php mysql sql sql-server

这是我的代码

$sql="INSERT INTO'".$tbl_name."'('username', 'nome', 'cognome', 'password', 'tipo')VALUES('".$submittedUsername."','".$submittedNome."','".$submittedCognome."','".$submittedPassword."','".$submittedTipo."')";
mysql_query($sql)or die(mysql_error());

它不起作用并一直告诉我:

您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册,以便在第1行的'registerusers'('username','nome','cognome','password','tipo')附近使用正确的语法

即使在第一行也只是“

3 个答案:

答案 0 :(得分:2)

在表名和INSERT INTO语法之间加一个空格,并将表名包装在`中。不在单撇号中。并从表名周围删除单个撇号。

实施例

您的字符串目前如下所示:

"INSERT INTO'table'('

所以放一个空格并从值中划分SQL语法。

"INSERT INTO 'table'(

然后从表名周围删除'

"INSERT INTO table(

最后从列名称周围删除'

答案 1 :(得分:1)

您将表名称作为字符串传递给'',传递表名称,您可以不用'',或使用``<这样可以将您的表名保存为“保留字”,这样您就可以调用表status<它的工作正常,但状态不起作用。 但是你的名为nameoftablewithoutreservedword的表在没有``

的情况下工作正常

答案 2 :(得分:-3)

我认为你不应该在你的行名中。实施例

$sql="INSERT INTO'".$tbl_name."'(username, nome, cognome, password, tipo)VALUES('".$submittedUsername."','".$submittedNome."','".$submittedCognome."','".$submittedPassword."','".$submittedTipo."')";