1
我有一個使用php,使用mysqli函數與MySql數據庫交互的網頁。我想要禁止來自MySql和Php的所有錯誤消息,並將這些錯誤記錄在數據庫中以進行跟蹤和記錄。很顯然,我不希望MySql查詢彈出以供用戶查看,我需要一個自定義消息。就像「服務器錯誤:請再試一次」。Php Mysqli自定義錯誤消息
有沒有什麼方法可以將這個實現到我的網站?
我有一個使用php,使用mysqli函數與MySql數據庫交互的網頁。我想要禁止來自MySql和Php的所有錯誤消息,並將這些錯誤記錄在數據庫中以進行跟蹤和記錄。很顯然,我不希望MySql查詢彈出以供用戶查看,我需要一個自定義消息。就像「服務器錯誤:請再試一次」。Php Mysqli自定義錯誤消息
有沒有什麼方法可以將這個實現到我的網站?
以下示例可能會幫助您消除用戶的錯誤消息。
<?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());
}
}
?>
請發佈您的現有代碼。如果你正在做可怕的約定'do_thing()或者死亡(mysql_error())',那麼解決方案就是不這樣做,而是測試成功/失敗並向最終用戶返回有意義的消息。 – 2013-02-15 17:42:13