Ajax как вернуть ошибку с сервера

318
21 октября 2017, 17:58

Добрый, день помогите пожалуйста, отправляю на сервер комментарий пользователя, средствами ajax, скрипту answer.php. Как вернуть ошибку, если в комментарии например, недопустимые символы или еще что-нибудь? Правильно ли я догадываюсь, что нужно использовать функцию header?

вот моя функция jquery

$.ajax
({
  url: '/function/answer.php,
  cache: false,
  success: function(data){в случае успеха},
  error: function (jqXHR, exception) {в случае ошибки}
});
Answer 1

Я думаю что лучше всего передавать результат валидации от сервера в виде json. Не копируйте бездумно, я просто описал суть.

    function saveComment()
{
    //filter - очищает данные перед вставкой
    $comment = filter($_GET['comment']);
    //Записываем в БД или валидируем данные
    if ($db->comment_table = $comment) {
        $result = ['status' => 'ok'];
    } else {
        $result = ['status' => 'error'];
    }
        $json = json_encode($result);
        return $json;
}

Ну а потом средствами js в success(data) смотреть что пришло от сервера и выводить соответствующее сообщение об успехе или ошибке.

        success: function (response) {
            var result = JSON.parse(response);
            if (result['status'] === 'ok') {
                Ура!
            } else {
                Не ура
            }
        }
READ ALSO
Не отображаются шрифты

Не отображаются шрифты

В общем суть следующая, писал лендинг на ноутеВ последствии, после переноса исходников на пк при открытии сайта обнаружил, что шрифты не отображаются...

274
Как убрать поле выберите файл?

Как убрать поле выберите файл?

Подскажите пожалуйста, как убрать(спрятать) кнопку "Выберите файл"?

394
формирования отчетов php [требует правки]

формирования отчетов php [требует правки]

Есть поисковик по базе данных в процессе выполнения поиска происходит выдача результата после чего нужно создать кнопку например "создать...

250