PHP で MySQL から PDO に切り替えます。以前は、クエリが実行され、何らかの理由で実行されなかった場合、次のように本文に mysql_error() メッセージを含む電子メールを自分自身に送信できました。
$query = "SELECT dogs FROM animals";
$res = mysql_query($query);
if (!$res) {
$error = "Error Message: " . mysql_error();
mail("my@email.com","Database Error",$error);
}
それから、ウェブサイトのデータベースに何か問題があると、emil で警告を受けました。
私のPDO設定は次のとおりです。
setAttribute(PDO::ATTR_EMULATE_PREPARES,false);
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
PDO接続自体にtry catchがありますが、次のように準備と実行のエラーメッセージを取得したいと思います:
$query = "SELECT cats FROM animals";
$sql = $pdo->prepare($query);
if (!$sql->execute()) {
$error = "Error Message: " . (pdo error message here);
mail("my@email.com","Database Error",$error);
}
電子メールの件名に PDO エラー メッセージを割り当てる方法についてのアイデアはありますか? 準備が errorInfo() を使用して失敗した場合、論理エラー メッセージを取得できますが、実行エラー (配列の無効なパラメーター カウントなど) では、エラー メッセージを取得できないようです。
助けてくれてありがとう。