我有一个我正在使用的MySQL数据库,但是当我尝试更新其中的一行时,它不起作用.这是我正在使用的更新代码:
mysql_query("UPDATE offtopic SET next = '$insert' WHERE id = '$id'");
Run Code Online (Sandbox Code Playgroud)
你的语法是正确的,所以它可能是变量或你的字段名称的错误.
试试这个:
$sql = "UPDATE offtopic SET next = '$insert' WHERE id = '$id'";
if (!mysql_query($sql)) {
echo "MySQL Error: " . mysql_error() . "<br />" . $sql;
}
Run Code Online (Sandbox Code Playgroud)
这可能会向您展示一些有用的信息来帮助您进行调试.
首先,你应该让它更安全一点:
mysql_query(sprintf("UPDATE offtopic SET next = '%s' WHERE id = '%s'",
mysql_real_escape_string($insert),
mysql_real_escape_string($id));
Run Code Online (Sandbox Code Playgroud)
现在,你的id实际是字符串,而不是数字?如果是数字,你应该更喜欢:
mysql_query(sprintf("UPDATE offtopic SET next = '%s' WHERE id = %d",
mysql_real_escape_string($insert), $id);
Run Code Online (Sandbox Code Playgroud)