Php jQuery ajax JSON自定义错误处理
我想使用登录系统jQueryAjax和json。我对成功函数没有任何问题。我不知道如何克服诸如“登录不正确”之类的自定义错误 这是我的密码,请帮我Php jQuery ajax JSON自定义错误处理,php,jquery,ajax,json,Php,Jquery,Ajax,Json,我想使用登录系统jQueryAjax和json。我对成功函数没有任何问题。我不知道如何克服诸如“登录不正确”之类的自定义错误 这是我的密码,请帮我 <script> $(document).ready(function(){ $("#login").click(function(){ if($("#defaultEmail").val() == ""){ $("#defaultEmail").addCla
<script>
$(document).ready(function(){
$("#login").click(function(){
if($("#defaultEmail").val() == ""){
$("#defaultEmail").addClass("field-err");
$("#defaultEmail").focus();
}else if($("#defaultPassword").val() == ""){
$("#defaultEmail").removeClass("field-err");
$("#defaultPassword").addClass("field-err");
$("#defaultPassword").focus();
}else{
$("#defaultPassword").removeClass("field-err");
$('#loading').css('display', 'block');
var email = $('#defaultEmail').val();
var password = $('#defaultPassword').val();
var queryString = "email=" + email + "&password=" + password + "";
$.ajax({
url: 'secureLogin.php',
contentType: "application/json; charset=utf-8",
dataType:'json',
async: false,
type:'GET',
data: queryString,
success: function(data){
$('#loading').css('display', 'none');
var url = "c_profile.php";
$(location).attr('href',url);
},
error: function(request,error){
$('#loading').css('display', 'block');
$("#log-ajax-error").append("ERROR: " + error);
}
});
}
});
});
</script>
我正在抛出json_编码来纠正错误。请帮我做这个。提前感谢。在ajax中,错误处理程序并不构成您抛出的错误,它构成连接错误或请求错误。这意味着,无论您以何种方式发回错误响应,它都会命中成功回调 在成功的过程中,您应该对响应进行一些检查: success: function(data){ if(data.status === false) { // There was an error } else { $('#loading').css('display', 'none'); var url = "c_profile.php"; $(location).attr('href',url); } }, 成功:功能(数据){ 如果(data.status==false) { //有一个错误 }否则{ $('加载').css('显示','无'); var url=“c_profile.php”; $(location.attr('href',url); } }, 并在PHP处理程序中添加一个状态键: $arr = array( 'status' => true (or false), 'a' => 'Unable to login' ); $arr=数组( “状态”=>true(或false), 'a'=>'无法登录' );
在ajax中,错误处理程序并不构成您抛出的错误,它构成连接错误或请求错误。这意味着,无论您以何种方式发回错误响应,它都会命中成功回调 在成功的过程中,您应该对响应进行一些检查: success: function(data){ if(data.status === false) { // There was an error } else { $('#loading').css('display', 'none'); var url = "c_profile.php"; $(location).attr('href',url); } }, 成功:功能(数据){ 如果(data.status==false) { //有一个错误 }否则{ $('加载').css('显示','无'); var url=“c_profile.php”; $(location.attr('href',url); } }, 并在PHP处理程序中添加一个状态键: $arr = array( 'status' => true (or false), 'a' => 'Unable to login' ); $arr=数组( “状态”=>true(或false), 'a'=>'无法登录' ); 在服务器端
$arr = array('error' => 'Unable to login');
echo json_encode($arr);
在客户端
success: function(data){
$('#loading').hide();
if( 'error' in data ){
$("#log-ajax-error").append("ERROR: " + data.error);
}
else{
var url = "c_profile.php";
$(location).attr('href',url);
}
},
如果ajax请求出现错误,将调用错误回调,因此您的代码需要在成功处理程序中 在服务器端
$arr = array('error' => 'Unable to login');
echo json_encode($arr);
在客户端
success: function(data){
$('#loading').hide();
if( 'error' in data ){
$("#log-ajax-error").append("ERROR: " + data.error);
}
else{
var url = "c_profile.php";
$(location).attr('href',url);
}
},
如果ajax请求出现错误,将调用错误回调,因此您的代码需要在成功处理程序中 亲爱的aziz.punjani,一切都很好。如果我提供错误的数据,那就是抛出一个错误。问题是在抛出错误数据后,如果您再次尝试使用正确的登录,它不会重定向。i、 它总是转到if循环。请帮助$arr=array('success'=>'正在重定向,请稍候…);echo json_编码($arr);哦,我明白了:)非常感谢你。阿齐兹。普加尼,一切都很好。如果我提供错误的数据,那就是抛出一个错误。问题是在抛出错误数据后,如果您再次尝试使用正确的登录,它不会重定向。i、 它总是转到if循环。请帮助$arr=array('success'=>'正在重定向,请稍候…);echo json_编码($arr);哦,我明白了:)非常感谢