我已编写此代码以检查电子邮件的可用性。
var email = $('#email_reg').val();
if(email && email.length > 0)
{
if(!isValidEmailAddress(email))
{
isValid = false;
$('#msg_email').html('Email is invalid').show();
}
else
{jQuery.ajax({
type: 'POST',
url: 'check_username.php',
data: 'email='+ email ,
cache: false,
success: function(response){
if(response == 1){
$('#msg_email').html('Email already Exists').show();
isValid=false;
}
else {
$('#msg_email').html('').hide();
}
}
});
}
}
else
{
isValid = false;
$('#msg_email').html('Please enter email').show();
}
php代码
<?php
require_once('Connections/connection.php');
$username= mysql_real_escape_string($_REQUEST["email"]);
if (!$con)
{
echo 0;
}
else {
mysql_select_db($database_connection, $connection);
$result = mysql_query("SELECT * FROM vendor_logiin WHERE username='" . $username . "'");
$num = mysql_num_rows($result);
echo $num; //it will always return 1 or 0 since we do not allow multiple users with the same user name.
}
mysql_close();
?>
现在所有其他工作都很好,就像把它留空并给出错误的电子邮件格式。但问题是当我给出一个已经存在的电子邮件ID。它没有给出错误。 我不知道出了什么问题。
答案 0 :(得分:0)
由于您未指定dataType
,因此响应可能被视为text或html,在这种情况下,将比较作为字符串进行比较可能是明智的:
if (response == "1") {...}
而不是数字。如果您将其作为数字进行比较,请使用parseInt(response, 10) == 1
。