作为我尝试插入的新手MySQL用户,但我刚刚阅读了MySQL文档,您只能在空白行上插入。我的UPDATE语句需要工作,我不确定我的语法是否正确。
$query3 = "UPDATE `offices` SET `scash`="$total" WHERE `officename`="$office"";
office是表名。 scash是要更新的行。 $ total是从帖子中提取的变量。 $ office是从同一个数据库中提取的变量。我只想把行话总计设为主办地点。
解析错误:语法错误,意外的T_VARIABLE是我得到的错误。
答案 0 :(得分:2)
$query3 = "UPDATE `offices` SET `scash`='$total' WHERE `officename`='$office'";
将双引号替换为字符串中的正常引号,因为双引号是字符串分隔符,不能在字符串中使用。
正如Marc B提到的那样,你的代码可能会因SQL注入而变得难以理解。请参阅this post如何避免这种情况。
答案 1 :(得分:1)
引号错误
$query3 = "UPDATE `offices` SET `scash`="$total" WHERE `officename`='$office'";
如果您只想更新一行,也总是使用 LIMIT 1
...
在更新行之前清理您的输入,至少使用mysqli_real_escape_string()
答案 2 :(得分:1)
如果您仍想在双引号内使用双引号,请将其转义为..
您的查询可以修改如下..
$query3 = "UPDATE `offices` SET `scash`=\"$total\" WHERE `officename`=\"$office\"";