アプリケーションでいくつかのjQueryAJAX呼び出しを使用していますが、500内部サーバーエラーなどのAJAX呼び出し中にエラーが発生することがあります。エラーの根底に到達するために、サーバーにログインして、PHPエラーを提供するエラーログを確認します。
これらのエラーが発生したときに通知を受け取る方法と、エラーの原因となったPHPエラーを探しています。少なくとも、ユーザーからメールを受信してからログインしてログを確認する代わりに、通知を受け取る方法。
このチュートリアルを確認しましたが、これをAJAXエラーに統合する方法がわかりません:http://net.tutsplus.com/tutorials/php/quick-tip-email-error-logs-to-yourself-with-php/また、これがPHPエラーを返すのか、500内部サーバーエラーだけを返すのかはわかりません。
任意のアイデア、既存のサービス、またはソリューションは大歓迎です!たとえば、私のAJAX呼び出しの1つを次に示します。
$.ajax ({
url: report,
cache: false,
success: function(html) {
// continue with event
},
error: function(x, status, error) {
// report error here
},
async:true
});
編集:
これは、phpエラー通知に対してAJAXリクエストを行う更新されたAJAX呼び出しです...
$.ajax ({
url: report,
success: function(html) {
// success
},
error: function(x, status, error) {
$.ajax ({
url: 'admin/error_notification.php',
type: "POST",
data:{
error: error
}
});
},
async:true
});
これはうまく機能しますが、AJAXエラーの原因となった実際のPHPエラーではなく、内部サーバーエラーが発生したことを報告するだけです。PHPエラー処理ファイルは次のとおりです。
$error = $_POST['error'];
$sysadmin_message = $error;
$sysadmin_to = 'email@example.com';
$sysadmin_subject = 'Error Notification';
$sysadmin_headers = "From: Site <accounts@example.com>\r\n";
$sysadmin_headers .= "MIME-Version: 1.0\r\n";
$sysadmin_headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
mail($sysadmin_to, $sysadmin_subject, $sysadmin_message, $sysadmin_headers);
明らかに、これは報告されたAJAXエラーのみを送信しますが、実際のPHPエラーを通知に追加するにはどうすればよいですか?