[英]JSON not reading php mysql numrows count
include_once "connect_to_mysql.php";
$query = mysql_query("SELECT * FROM data WHERE Email = '$email'");
$num = array();
//Caculate the number of rows that have macthing username
$numrows = mysql_num_rows($query);
$num[] = $numrows;
if ($num != 0){
$data = array('success' => 'true', 'message' => 'Incorrect Email');
echo json_encode($data);
}
The if statement isn't processed and no JSON data is echoed, rather the script freeze. 如果不处理if语句,则不回显任何JSON数据,而是冻结脚本。
What am I doing wrong? 我究竟做错了什么?
$result = mysql_query("SELECT COUNT(*) AS num FROM data WHERE Email = '$email'");
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$num = intval($row['num']);
if ($num != 0) {
$data = array('success' => 'true', 'message' => 'Email found');
} else {
$data = array('success' => 'false', 'message' => 'Incorrect Email');
}
echo json_encode($data);
I don't understand why you're using $num[]
. 我不明白您为什么使用
$num[]
。
include_once "connect_to_mysql.php";
$email = $_POST['email'];
$query = mysql_query("SELECT * FROM data WHERE Email = '$email'");
$numrows = mysql_num_rows($query);
if ($numrows != 0){
$data = array('success' => 'true', 'message' => 'Correct Email');
echo json_encode($data);
}else{
$data = array('success' => 'false', 'message' => 'Incorrect Email');
echo json_encode($data);
}
try using following Jquery: 尝试使用以下Jquery:
$.post('your_file.php',{email: 'your_email'},function(data){
alert(data.success + ' ' + data.message);
},'json');
You are fetching a scalar value $numrows
into an array $num[]
, so you have got an error. 您正在将标量值
$numrows
放入数组$num[]
,因此出现错误。 Try using $numrows
directly in the if statement, like this: 尝试直接在if语句中使用
$numrows
,如下所示:
if ($numrows != 0){
$query = mysql_query("SELECT * FROM data WHERE Email = '$email'");
if(mysql_num_rows($query)){
$data = array('success' => 'true', 'message' => 'Email found');
}
else{
$data = array('success' => 'false', 'message' => 'Incorrect Email');
}
echo json_encode($data);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.