내 응용 프로그램에서 여러 jQuery AJAX 호출을 사용하고 500 내부 서버 오류와 같은 AJAX 호출 중에 오류가 발생할 수 있습니다. 오류의 맨 아래로 가려면 서버에 로그인하여 PHP 오류를 제공하는 오류 로그를 확인하십시오.PHP 스크립트 AJAX 오류보고
나는 이러한 오류가 발생했을 때 알림을 받고 오류를 일으킨 PHP 오류가 무엇인지 찾고 있습니다. 적어도 사용자로부터 전자 메일을 수신하고 로그를 확인하는 대신 알림을받는 방법.
이 튜토리얼은 AJAX 오류 (http://net.tutsplus.com/tutorials/php/quick-tip-email-error-logs-to-yourself-with-php/)와 통합하는 방법을 잘 모르겠지만 PHP 오류 또는 500 내부 서버 오류가 반환되는지 확실하지 않습니다.
아이디어, 기존 서비스 또는 솔루션에 큰 감사드립니다!
$.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 중 하나가 예를 들어 호출입니다
이것은 훌륭하지만, AJAX 오류의 원인이 된 실제 PHP 오류 대신 내부 서버 오류가 발생했다고보고합니다. 여기에 PHP 오류 처리 파일입니다
$error = $_POST['error'];
$sysadmin_message = $error;
$sysadmin_to = '[email protected]';
$sysadmin_subject = 'Error Notification';
$sysadmin_headers = "From: Site <[email protected]>\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 오류를 추가하는 방법은 무엇입니까?
php.ini 파일에서 display_errors가 "On"으로 설정되어 있습니까? – ContextSwitch
이 아닌 경우 "On"으로 설정 한 다음 오류가 사용자에게 표시되지 않도록 각 비 아약스 페이지에서 오류보고 수준을 설정하십시오. – ContextSwitch
여전히 try/catch가 더 나은 솔루션이라고 생각합니다. 그래도 – ContextSwitch