Отправляю ajax-запрос к php-файлу:
$.ajax({
url: '/engine/search.php',
dataType: 'json',
data: {
data:data
},
method: 'POST',
success: function(){
console.log('Request sent successfully. Pending...')
}
}).fail(function(response){
console.log(response);
}).done(function(){
console.log('OK'); // "OK" не выводится
});
PHP:
<?php
require('functions.php');
if(isAjax()) {
$data = $_POST['data'];
if(isset($data) && !empty($data)) {
if(!preg_match('/[A-Z][A-Z][A-Z]/', $data['from']) && !preg_match('/[A-Z][A-Z][A-Z]/', $data['to'])) {
header('HTTP/1.0 500 Internal Server Error');
die('Bad IATA codes provided');
}
if(!validateDate($data['there']) && !validateDate($data['thence'])) {
header('HTTP/1.0 500 Internal Server Error');
die('Bad date format provided');
}
if(!preg_match('/^[1-9]*$/', $data['adults']) && !preg_match('/^[0-9]*$/', $data['teens']) && !preg_match('/^[0-9]*$/', $data['kids'])) {
header('HTTP/1.0 500 Internal Server Error');
die('Bad passengers data provided');
}
session_start();
$_SESSION['search_data'] = json_encode($data);
}
} else {
header('HTTP/1.0 403 Forbidden');
die('Access denied');
}
?>
В нём успешно происходит обработка полученых данных, но почему-то ajax-запрос заходит в fail(), хотя код - 200(OK). В чём может быть проблема?
В теле ajax-запроса был указан dataType: 'json'
, из-за которого ajax ждал ответа от сервера в виде json-массива, но так его и не получал.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Помогите с кодом! Разместить на странице, чтоб отлавливать ботов от spy сервисов и тех что кликают по ссылке