EDIT: Я исправил ошибки с PHP, которые были упомянуты в ответах, но у меня все еще есть та же проблема.
Я пытаюсь показать сообщение об ошибке, если мой запрос POST не удался, и показать сообщение об успешном завершении, если оно не получилось. В настоящий момент это сообщение успешно отображается, но ничего не происходит, если я делаю сбой sql, даже в консоли.
Jquery: // Я удалил ненужные код
$("#form").validate({
ignore:'',
errorPlacement: function(error, element) {
error.insertAfter(element.parent()); // <- make sure the error message appears after parent element (after textbox!)
},
rules: {
},
messages: {
},
submitHandler: function(form) {
var datastring = $("#form").serialize();
$.ajax({
type: "POST",
url: "myscript.php",
data: datastring,
dataType:"json",
success: function (response) {
if(response.status === "success") {
window.alert(response.comment);
} else if(response.status === "error") {
window.alert(response.comment);
}
}
}); // close $.ajax
} // close submit handler
}); //end validate
PHP:
if($row = sasql_fetch_array($insert))
{
//success message
$arr = array ('status'=>'success','comment'=> $custid);
echo json_encode($arr);
} else {
//error message
$arr = array ('status'=>'error','comment'=>'There has been an error. Please try again.');
echo json_encode($arr);
}
Кто-нибудь есть какие-либо идеи о том, что этот вопрос может быть здесь? Как я уже сказал, если я добавлю console.log(JSON.stringify(response));
сразу после функции success
, ничего не возвращается в массив ошибок. Thanks
что ответ от сервера, когда вы делаете вызов AJAX? –
Да - для успеха, если sql терпит неудачу, хотя я не получаю ответа. – Janey
Вы используете '+' для конкатенации строк? Это должно быть '.' (Это в' Пожалуйста, попробуйте еще раз. '+ $ Custid') – Stryner