php sql更新问题

时间:2014-04-11 17:42:56

标签: php sql sql-update

我正在尝试使用PHP更新SQL表。 我有一个提交到数据库的表单 - 这工作正常。 我从数据库中检索了条目,这也正常。

我遇到的问题是当我尝试使用其他信息将数据库更新到comment字段(已经包含信息的“单元格”)时。

这是我的SQL代码。你能指出我的问题所在吗? 我得到的错误是:

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 '= 36tWHERE id = 0' at line 1

我的代码如下:

$commy = $_POST['comment'];
$ident = $_POST['id'];

$sql = "UPDATE issuelog".
       "SET comment = $commy".
       "WHERE id = $ident";

我知道这里存在安全问题,但这仅限本地主机使用,仅供我自己使用。

2 个答案:

答案 0 :(得分:1)

你不需要连接,你应该在值周围加上引号。

$sql = "UPDATE issuelog
       SET comment = '$commy'
       WHERE id = '$ident';";

更新:正如其他人指出你需要空格,但这就是你不需要连接的原因。通过关闭每一行并连接,您将删除它们之间的空格。请务必使用准备好的陈述,因为正如您所说,这可能会被注射。

答案 1 :(得分:0)

$sql = "UPDATE issuelog".
   " SET comment = $commy".
   " WHERE id = $ident";

你需要空格 - 尝试回显你的$sql - 你会看到SET和WHERE与之前的单词合并。