現在、PDOの使用に切り替えましたが、例外の処理に問題があります。接続は正しく、クエリは完全に機能しますが、意図的なミスを犯した場合、エラーは期待どおりに処理されません。
クエリ内のテーブルの名前を存在しないテーブルに変更しました。以下に示すコードから、ページに「データベースエラー」が出力されると予想されますが、代わりに、次のような恐ろしいオレンジ色のエラーが表示されます...
'キャッチされなかった例外'PDOException'とメッセージ'SQLSTATE[42S02]:ベーステーブルまたはビューが見つかりません:1146テーブル' test.post'がC:\ wamp \ www \ website\functions.phpの46行目に存在しません'
データベースに接続するときのコードは次のとおりです...
$hostname = 'localhost';
$username = '';
$password = '';
try{
$dbh = new PDO("mysql:host=$hostname;dbname=test", $username, $password);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
print ("Database Error");
}
私は間違いを犯していますか、それともPDOエラーを処理する別の方法がありますか?