2016-05-14 76 views
1

我知道这很简单,但我一直在寻找这一段时间,似乎无法确定是什么问题。我想用两个条件更新表中的一行。当我使用任何标准时,表格更新正常,但是当我将它们合并时,它不起作用。SQL更新与多个标准

这是查询

$updatequery = "UPDATE query SET audio='$finalpath' WHERE content='$title' AND WHERE userid LIKE '%$regID%'"; 

了reg ID的例子:

APA91bGHS59rrpM0sbX9PIYT3SzXs-W1yEtGa2xGMGJXi8O1vW2SrgN7koHDj2o6ZwKvkd3TxtzhktsiVtQNSYQRa4uNDF7Yy0VOf0BJfQOnJWMtN2WBQjmVDsuU-0GxmceNLd8SWqOM

的内容实例: 我在哪里可以找到汽车

+1

WHERE哪里哪里 – Strawberry

回答

1
WHERE content='$title' AND userid LIKE '%$regID%' 

在需要进行一次

2

您只需要使用where关键字一次:

$updatequery = 
"UPDATE query SET audio='$finalpath' WHERE content='$title' AND userid LIKE '%$regID%'"; 
# "WHERE" removed here ------------------------------------^ 

强制性评论:
使用字符串操作这样离开你的代码容易受到SQL注入攻击。你应该考虑使用prepared statements

1

您的查询是错误的。

试试这个:

$updatequery = "UPDATE query SET audio='$finalpath' WHERE content='$title' AND userid LIKE '%$regID%'"; 

编辑: 当需要一次。

+1

解释什么是错的 –

1

只能有一个WHERE条款,所以这是一个语法错误:

WHERE content='$title' AND WHERE userid LIKE '%$regID%' 

合并逻辑单子句中:

WHERE content='$title' AND userid LIKE '%$regID%' 

WHERE条款本质上就像条件语句用任何其他语言。你可以根据你的喜好构建一个复杂的布尔条件树,只要整个事物解决为布尔值就可以了。