mrusklon
@mrusklon
Не получается? Яростно гугли!

Как отследить ошибку отправки формы ajax?

Все работало до определенного момента, "никогда такого не было и вот опять © "
на сайте куча форм, все работают по принципу
jQuery.ajax({
        url: "//адрес обработчика.php",
        type: "POST",
        data: th.serialize(),
        success: function (res) {
            if (res) {
                if (res.inbase) {
                    alert("ок");
                } else {
                    alert(res.fromselect);
                }
                console.log("message" + res.message);
                console.log("inpost" + res.inpost);
                console.log(res.items);
            } else {
                alert(res.message);
            }
            return false;
        },
        error: function () {
            console.log("проблема с ajax");
        }

    });


сейчас мне приходит в консоль с каждой переменной типа res.message , res.inpost , res.items = undefined
в обработчике на сервере
$items = isset($_POST['items']) ? $_POST['items'] : false;


items это название post массива, выходит обработчик его не получает и следовательно эти переменные не существуют , отсюда и undefined , как такое может быть что пост не ловит сервер? Как отловить почему?
  • Вопрос задан
  • 403 просмотра
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat Куратор тега JavaScript
{PHP, MySql, HTML, JS, CSS} developer
Открываем консоль браузера, идем во вкладку нетворк, включаем кнопочку XHR, делаем запрос.
Смотрим:
1) куда ушел запрос(неплохо бы открыть из браузера, а в коде на сервере вывести какой-то проверочный стринг),
2) Что вернул сервер(кликаем на запрос в списке нетворк вызовов и смотрим ответ сервера)
В идеале сервер вернет JSON строку с объектом, в котором уже будут все нужные поля, но в вашем случае явно что-то не так.
Соответственно проверяйте - уходит ли запрос, туда ли уходит и что возвращает сервер.

Забыл написать - ошибки яваскрипта в консоли проверьте в первую очередь.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы