gpt4 book ai didi

php - 如何处理 PDO 异常

转载 作者:IT老高 更新时间:2023-10-28 23:56:24 27 4
gpt4 key购买 nike

我正在尝试在 php 上使用 PDO 类,但我在找到处理错误的正确方法时遇到了一些麻烦,我写了这段代码:

<?php
// $connection alreay created on a class which works with similar UPDATE statements
// I've simply added here trim() and PDO::PARAM... data type


$id = 33;
$name = "Mario Bros.";
$url = "http://nintendo.com";
$country = "jp";


try {

$sql = "UPDATE table_users SET name = :name, url = :url, country = :country WHERE user_id = :user_id";

$statement = $connection->prepare ($sql);

$statement->bindParam (':user_id', trim($id), PDO::PARAM_INT);
$statement->bindParam (':name', trim($name), PDO::PARAM_STR);
$statement->bindParam (':url', trim($url), PDO::PARAM_STR);
$statement->bindParam (':country', trim($country), PDO::PARAM_STR, 2);

$status = $statement->execute ();

} catch (PDOException $e) {
print $e->getMessage ();
}

print $status; // it returns a null value, and no errors are reported

?>

这部分代码没有报错,只是根本不起作用,最下面的var $status,返回null值。

谁能帮我找出我错在哪里?

最佳答案

除非您告诉它,否则 PDO 不会抛出异常。你跑了吗:

$connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

在 PDO 对象上?

关于php - 如何处理 PDO 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2104481/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com