PHP MYSQL插入抛出错误

时间:2014-03-14 17:24:21

标签: php mysql database

我已经尝试过对此进行修复,实际上这些代码中的一部分已经从以前的修复程序中删除了#34;我发现它没有用。我对php很新,所以我可能会遗漏一些明显的东西。这是来源。

<?php
$device=$_POST['Device'];
$license=$_POST['License'];
$tbl_name="tablename";

$con = mysql_connect("url", "name", "pass");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("dbname", $con);

$query="INSERT INTO $tbl_name(Id, Device Key,License Key)VALUES('', '$device', '$license')";

if (!(mysql_query($query,$con)))
  {
  die('Error: ' . mysql_error());
  }

echo "1 device added was added.";


mysql_close($con)
?>

这是我的错误

Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Key,License Key)VALUES('', 'Device Key Here', 'License Key Here')' at line 1"

1 个答案:

答案 0 :(得分:0)

基本SQL语法:标识符(字段名称,表名等)中不能包含空格:

$query="INSERT INTO $tbl_name(Id, Device Key,License Key)VALUES('', '$device', '$license')";
                                        ^---wrong   ^---wrong

一般来说,你的姓名中不应该有空格。如果必须,请使用_代替。

如果您无法重命名字段,则必须正确引用它们:

$query="INSERT INTO $tbl_name(Id, `Device Key`,`License Key`)VALUES('', '$device', '$license')";