PHP-код ошибки AJAX без использования массива

Я хочу, чтобы получить скрипт PHP, вызванный через AJAX, с возвратом с кодом error: который обработает обработчик jQuery AJAX error: будет обрабатываться. Я не хочу использовать массив JSON – я бы хотел, чтобы он был максимально чистым. Может ли кто-нибудь указать мне в правильном направлении?

Благодаря,

Джеймс

Если вы хотите активировать обработчик ошибок AJAX, просто передайте что-то другое, кроме 200! Попробуй это:

 <?php header("HTTP/1.0 404 Not Found"); exit(); ?> 

Не забудьте сделать две вещи:

  1. Попробуйте отправить правильный код ошибки для соответствия методам HTTP. т.е. если страница выдает ошибку, тогда вы должны вернуть 500 и т. д. Здесь вы можете увидеть ссылку на сайте w3.org .
  2. Убедитесь, что вы отправляете заголовок перед любым другим контентом, кроме пробелов.

Это должно быть чистое решение.

Попробуй это:

 header("HTTP/1.0 404 Not Found"); exit(); 

Передача Ajax не должна быть JSON. Это может быть xml, json, script или html. По умолчанию AJAX использует XML (это означает X от AJAX). Я вижу, что вы используете jQuery. Если вы используете метод ajax, у вас есть параметр dataType, который вы можете изменить.

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

EDIT: метод jQuery'ajax'statusCode работает, но только в jQuery 1.5

Я попытался использовать jQuery -метод ajax ' statusCode ', теперь работает с jquery 1.5, но не получил никаких результатов … но это должен быть путь …

если мой скрипт php делает это:

  //localhost/dev/false.php header("HTTP/1.0 404 Not Found"); exit(); 

и мой javascript делает это:

 $.ajax({ url:'http://localhost/dev/false.php', statusCode: { 404: function() { alert('page not found'); } } });