mysqli関数を使用してMySqlデータベースと対話するphpを使用するWebページがあります。MySqlとPhpからのすべてのエラーメッセージを抑制し、追跡と履歴のためにこれらのエラーをデータベースに記録したいと思います。明らかに、ユーザーが表示できるようにMySqlクエリをポップアップ表示したくないので、カスタムメッセージが必要です。「サーバーエラー:再試行してください」のようなものです。
これを私のサイトに実装する方法はありますか?
これは、ユーザーのエラーメッセージを乱用するのに役立つ可能性のある例です。
<?php
mysqli_report(MYSQLI_REPORT_OFF); //Turn off default messages
$mysqli = new mysqli("localhost", "user", "password", "database");
$query = "SELECT * FROM Table ";
$res = $mysqli->query($query);
if ($mysqli->error) {
try {
throw new Exception("MySQL error $mysqli->error <br> Query:<br> $query", $msqli->errno);
} catch(Exception $e ) {
// Log your error in db or just output it
// using $e->getMessage() to log the actual message;
echo nl2br($e->getTraceAsString());
}
}
?>