Ajax response
Здравствуйте. Прошу вашей помощи. Есть простая форма, где есть поля - имя, емейл, телефон. Нужно обработать эту форму без перезагрузки в файле subscribe.php. В нем происходит запись в БД данных с формы. Если в БД уже существует пользователь под таким имейлом, то должно выводится соответствующее сообщение для пользователя.
Вот ajax
var options = {
url: "subscribe.php",
type:'POST',
success: function (data){
$("#subscribe").clearForm();
alert(data);
}};
$("#subscribe").validate({submitHandler: function() {$('#subscribe').ajaxSubmit(options);},focusInvalid: false,focusCleanup: true,
rules: {email:{required: true,email: true},},
messages:{email:{required: "поле не заполнено",email: "некорректный email"},},
}});
Как мне получить из subscribe.php данные о том, есть ли человек с таким имейлом в БД? Сейчас при alert-е выводится html страницы. Я примерно думаю, что это через json
if(is_in_bd){
$result='есть';
echo json_encode($result);
}
else{
$result='нет';
echo json_encode($result);
}
Как теперь получить эти данные в ajax-запросе? |
Не совсем так, json_encode здесь ни к селу, ни к городу). Она преобразует массивы PHP в json, а здесь не массив, а простая переменная.
В этом случае надо просто выводить переменную: echo ($is_in_bd) ? '1' : '0' или даже (зависит от типа переменной, если эта пустая строка, то лучше не надо, хотя тоже можно проверять): echo $is_in_bd; А в option.success соответственно проверять if (data === '0') и т. д. |
| Часовой пояс GMT +3, время: 03:19. |