我只是将一个站点转换为 PDO,这是我第一次接触它,但我很难从 PDO 获得任何有用的错误信息。我已经阅读了很多关于这个主题的其他帖子,但似乎没有一个提供适合我的解决方案。
这是代码:
try {
$dbh = new PDO("mysql:host=".CO_DB_HOST.";dbname=".CO_DB_NAME, CO_DB_UNAME, CO_DB_PWORD);
$dbh ->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
}
catch(PDOException $e) {
echo $e->getMessage();
}
function addRec($data) {
global $part_id, $dbh;
$part_id++;
try {
$sth=$dbh->prepare("
INSERT INTO
non_existent_table
(
name
) VALUES (
?
);
");
for ($i = 0; $i < count($data); $i++) {
$sth->execute($data[$i]);
}
}
catch(PDOException $e) {
echo "Something went wrong. Please report this error.";
file_put_contents('/PDOErrors.txt', PDOStatement::errorInfo(), FILE_APPEND);
}
}
// Insert a database record
$data = array(
array(
'joe blogs', /* name */
)
);
addRec($data);
该表不存在,但我在 PDOError.txt 中没有收到任何错误,在我的 httpd 错误日志中也没有任何错误。有人可以阐明我做错了什么吗?谢谢。