我知道这很简单,但我已经看了一段时间,似乎无法确定问题所在。我想使用两个条件更新表中的行。当我使用任何一个标准时,表格会更新,但是当我将它们组合起来时,它就不起作用了。
这是查询
$updatequery = "UPDATE query SET audio='$finalpath' WHERE content='$title' AND WHERE userid LIKE '%$regID%'";
注册的一个例子:
APA91bGHS59rrpM0sbX9PIYT3SzXs-W1yEtGa2xGMGJXi8O1vW2SrgN7koHDj2o6ZwKvkd3TxtzhktsiVtQNSYQRa4uNDF7Yy0VOf0BJfQOnJWMtN2WBQjmVDsuU-0GxmceNLd8SWqOM
内容示例: 我在哪里可以找到一辆车
答案 0 :(得分:2)
您只需使用where
关键字一次:
$updatequery =
"UPDATE query SET audio='$finalpath' WHERE content='$title' AND userid LIKE '%$regID%'";
# "WHERE" removed here ------------------------------------^
强制性评论:
像这样使用字符串操作会使代码容易受到SQL注入攻击。您应该考虑使用prepared statements代替。
答案 1 :(得分:1)
您的查询错误。
试试这个:
$updatequery = "UPDATE query SET audio='$finalpath' WHERE content='$title' AND userid LIKE '%$regID%'";
编辑: 哪里只需要一次。
答案 2 :(得分:1)
您只能拥有一个 WHERE
子句,因此这是一个语法错误:
WHERE content='$title' AND WHERE userid LIKE '%$regID%'
在单个子句中结合逻辑:
WHERE content='$title' AND userid LIKE '%$regID%'
WHERE
子句基本上与任何其他语言的条件一样。您可以根据需要构建一个复杂的布尔条件树,只要整个事情解析为布尔值就可以了。
答案 3 :(得分:1)
WHERE content='$title' AND userid LIKE '%$regID%'
只需要一次