Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有绑定参数的PHP PDO更新查询_Php_Pdo - Fatal编程技术网

带有绑定参数的PHP PDO更新查询

带有绑定参数的PHP PDO更新查询,php,pdo,Php,Pdo,我正在尝试运行以下查询: $sth = "UPDATE `users` SET users_password VALUES (:hash) WHERE users_id = $users_id"; $q = $conn->prepare($sth); $q->execute(array(':hash'=>$hash)); 但我得到了以下信息: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Sy

我正在尝试运行以下查询:

$sth = "UPDATE `users` SET users_password VALUES (:hash) WHERE users_id = $users_id";
$q = $conn->prepare($sth);
$q->execute(array(':hash'=>$hash));
但我得到了以下信息:

Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 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 'VALUES ('$2y$12$Ao46iC7W9Lj8FFfSmAaeoeQs9O.3QRVtDbHAyvpzH90YIUN61ma8i') WHERE us' at line 1'
有什么想法吗

(是的,代码并不是在一个try,catch块中,而只是在此时用一些东西进行试验)

改变这一点

$sth = "UPDATE `users` SET users_password VALUES (:hash) WHERE users_id = $users_id";


VALUES
子句属于
INSERT
查询,而不属于
UPDATE
查询。为什么不绑定用户id?哇,谢谢Mario,这真的很有帮助,谢谢你的解决方案……嘿@s.Visser我可以做是的,谢谢你。我是PDO的新手,所以在我尝试用PDO生成任何有意义的代码/项目之前,我只是在摸索自己的方式,尝试不同的东西。为什么要投否决票?至少解释一下。因为这个答案是正确的。不是我投了反对票:)它非常有效,谢谢。我认为是来自上面的Mario家伙,很遗憾,PHP社区中像他这样的人不是来帮忙的,而是来简单地展示他们在编码方面比像我这样的新手“优越”多了,而没有提供任何帮助。
$sth = "UPDATE `users` SET users_password = :hash WHERE users_id = $users_id";