我正在尝试开始使用 PDO,但遇到了一些麻烦。这是我的原始代码:
$query = "
UPDATE `products`
SET `product_qty` = '{$_GET['product_qty']}'
WHERE `product_id` = '{$_GET['product_id']}'
";
mysql_query($query) or die(mysql_error());
这很好用,但是当我尝试将其转换为 PDO 语法时:
$db->prepare('
UPDATE products
SET product_qty = :product_qty
WHERE product_id = :product_id
');
try
{
$db->execute(array(':product_qty' => $_GET['product_qty'], ':product_id' => $_GET['product_id']));
}
catch (PDOException $e)
{
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
我得到错误:
Fatal error: Call to undefined method PDO::execute() in ...
有人可以帮助我让我的第一个 PDO 查询正常工作吗?
最佳答案
$db->prepare()
返回一个 PDOStatement
,它有 execute()
方法。
$stmt = $db->prepare('UPDATE products
SET product_qty = :product_qty
WHERE product_id = :product_id');
$stmt->execute(array(
':product_qty' => $_GET['product_qty'],
':product_id' => $_GET['product_id']
));
关于php - 第一次使用 PDO 遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11332458/