我有一个字段为5,想加上2,使总数为7,但出现错误:
致命错误:未捕获的错误:调用中未定义的方法PDO::execute()...
我的代码是:
$statement = $connection->execute("
UPDATE ws_quantities
SET quantity = quantity + :qty
WHERE product_id = :product_id AND store_id = :store_id
");
$result = $statement->execute([
'qty' => $_POST["qty"],
'product_id' => $_POST["product_id"],
'store_id' => $_POST["store_id"]
]);
我是不是错过了什么!
1条答案
按热度按时间5lhxktic1#
这看起来像是在$connection对象而不是$statement对象上调用execute方法。PDO::execute方法是用来执行一个预处理语句的,而不是用来执行SQL查询的。
请尝试以下操作:
在这段代码中,$query变量包含SQL查询作为字符串。$connection-〉prepare方法用于从查询创建一个预准备语句,$statement-〉execute方法用于使用给定的参数值执行预准备语句。
请注意,这只是一个示例,在SQL查询中使用用户输入之前,正确地验证和清理用户输入始终是一个好主意。