2013-04-24 2 views
1

Есть ли какой-либо умный способ обработки ошибок php, возвращаемых в объект данных. В настоящее время я иногда получаю такие вещи, как:jquery parseJSON обработка ошибок php

<br /> 
<font size='1'><table class='xdebug-error' 
..... 

За этим обычно следует объект json, которого я ожидаю. Есть ли систематический способ поиска этих ошибок? Пример вызова я использую может быть:

function getMyCharities(callback) { 
$.post("my_file.php", function(data) { 
    callback(data); 
}); 
} 

В документации JQuery я нашел:

.done(function() { alert("second success"); }) 
.fail(function() { alert("error"); }) 
.always(function() { alert("finished"); }); 

, но они не обрабатывают ошибки такого типа, как я тестировал , Я также не хочу создавать парсер ошибок, если это возможно.

благодаря

ответ

3

Правильный способ справиться с этими ошибками, чтобы отключить сообщения об ошибках в PHP. У вас не должно быть сообщений об ошибках для производственного сайта.

С отчетом об ошибках выключена, все ошибки PHP вернет ошибку в HTTP 500 сервер, который затем будет перехватывается fail обратного вызова вашего объекта $.post обещание.

0

Я думаю, что эти методы успеха/отказа относятся к вызову ajax, сделанному на сервер. В вашем случае сервер возвращает данные с правильным http-статусом. Вам нужно будет проанализировать объект данных непосредственно при успешном обратном вызове, чтобы проверить признаки сбоя, (json flag based ({isFailure: 1}) или наихудший случай, основанный на строках). Если нет, вам нужно, чтобы сервер каким-то образом потерпел неудачу, поэтому, когда будет выполнен вызов ajax, вызов завершится неудачно, и вы сможете справиться с этим в обратном вызове «fail» на странице.

Смежные вопросы