从php向jquery返回jsonencode错误
return json_encode error from php to jquery
如果用户名和密码错误,我想显示错误。我从昨天开始尝试。不知道出了什么问题。每次controll都会出错并显示错误。尝试了json,但不起作用
<script>
$(document).ready(function() {
$("#LoginForm").submit(function(e) {
$("#simple-msg1").html("<img src='img/loading.gif'/>");
var postData ="";
postData = $('#LoginForm').serializeArray();
var formURL = $('#LoginForm').attr("action");
$.ajax( {
url : formURL,
type: "POST",
data : postData,
dataType:'json',
success:function(data, textStatus, jqXHR) {
alert(data.error);
if(data.error == 1) {
$("#simple-msg1").html('<pre><code class="prettyprint">'+data.message+'</code>< /pre>');
} else {
$("#simple-msg1").html('<pre><code class="prettyprint"> Login Successfull </code></pre>');
window.location = "/property/Dealer/ManageProfile.php?Login=successfull";
}
},
error:function(data,textStatus) {
$("#simple-msg1").html('<pre><code class="prettyprint"> wrong username or password 11</code></pre>');
}
});
e.preventDefault(); //STOP default action
});
$("#Button1").click(function() {
$("#LoginForm").submit(); //SUBMIT FORM
});
});
</script>
这是php文件
<?php
ob_start();
if(session_id() == '')
{
session_start();
}
include 'config.php';
$error = '0';
$message = 'Valid';
$redirect = 'Dealer/EditLoginDetails.php';
$myusername=$_POST['txtusername'];
$mypassword=$_POST['txtpassword'];
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword=mysql_real_escape_string($mypassword);
$qry = "SELECT UserName,Type_user FROM login WHERE UserName = '".$myusername."' AND password = '".$mypassword."' ";
$result = mysql_query($qry) or die ("Query failed");
$UserData = mysql_fetch_array($result);
if($UserData['UserName'] != "") {
//echo $UserData['UserName'];
$_SESSION['UserId'] = $myusername;
$typ = $UserData['Type_user'];
if ( $typ == "Dealer") {
header('location:/Dealer/EditLoginDetails.php');
//echo "dealer";
//echo json_encode(array('success'=>'true'));
//header('location:/Dealer/EditLoginDetails.php');
} else if ($typ == "Individual") {
header('location:/Dealer/EditLoginDetails.php');
} else {
header('location:/Builder/managep.php');
}
} else {
$error = '1';
$message = 'Invalid username or password';
// echo "forbiddnt";
//header('HTTP/1.0 403 Forbidden');
//echo " wrong username or password";
}
echo json_encode(array('error' => $error, 'message' => $message, 'redirect' => $redirect));
?>
我对javascript错误的猜测是,头是发送的响应不是纯json。您可以在echo json_encode....
调用之后添加exit();
调用
请使用此代码。看来您在ajax的if条件中检查了错误的值。
$(document).ready(function() {
$("#LoginForm").submit(function(e) {
$("#simple-msg1").html("<img src='img/loading.gif'/>");
var postData ="";
postData = $('#LoginForm').serializeArray();
var formURL = $('#LoginForm').attr("action");
$.ajax( {
url : formURL,
type: "POST",
data : postData,
dataType:'json',
success:function(data, textStatus, jqXHR) {
alert(data.error);
if((data.error != '1') {
$("#simple-msg1").html('<pre><code class="prettyprint">'+data.message+'</code>< /pre>');
} else {
$("#simple-msg1").html('<pre><code class="prettyprint"> Login Successfull </code></pre>');
window.location = "/property/Dealer/ManageProfile.php?Login=successfull";
}
},
error:function(xhr, status, error) {
$("#simple-msg1").html('<pre><code class="prettyprint"> wrong username or password 11</code></pre>');
}
});
e.preventDefault(); //STOP default action
});
$("#Button1").click(function() {
$("#LoginForm").submit(); //SUBMIT FORM
});
});
</script>
相关文章:
- Node.js v6.2.0类扩展不是函数错误
- Jquery菜单操作不稳定,定位不正确,存在一般错误
- document.open/document.write没有正确地清除chrome中的文档——这是chrome的错误吗
- 试图在引导模式内动态生成图表,得到offsetWidth错误
- 为什么会出现错误;未捕获的类型错误:undefined不是函数;
- 我如何修复包含在captcha的addthis中的错误
- 同样,同样的错误'ahorcado.js:26未捕获类型错误:无法读取属性'beginPath'
- 节点是否需要模块传递带有方括号的arg?这是个错误吗
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- CKFinder 3为所选文件返回错误的URL
- 同位素库错误:未捕获错误无布局模式包装生产线8
- 铬:“;未捕获的语法错误:意外的标记:"
- 如何通过自己获得Chrome扩展的用户反馈/错误报告
- 相位器状态未捕获参考错误
- /undefined在我的404错误日志中多次出现
- Javascript未捕获语法错误意外的标识符错误
- javascript:如何在antlr生成的Lexer中进行错误处理
- Angularjs工厂注入错误
- 可以设置“;文件名"发生错误时显示的内联脚本标记的
- 从php向jquery返回jsonencode错误