Javascript 如何使用ajax检查数据库中已经存在的电子邮件?

Javascript 如何使用ajax检查数据库中已经存在的电子邮件?,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我正在寻找一个代码,用于获取ajax响应,以检查数据库中是否已经输入了电子邮件地址。这是我的代码片段 Java脚本: <script type="text/javascript"> pic1 = new Image(16, 16); pic1.src="img/loader.gif"; $(document).ready(function(){ $("#email").change(function() { var usr = $("#email").val(); if(us

我正在寻找一个代码,用于获取ajax响应,以检查数据库中是否已经输入了电子邮件地址。这是我的代码片段

Java脚本:

<script type="text/javascript">
pic1 = new Image(16, 16);
pic1.src="img/loader.gif";

$(document).ready(function(){

$("#email").change(function() {

var usr = $("#email").val();

if(usr.length >= 4)
{
$("#status").html('<img style="width:17px;" src="img/loader.gif" align="absmiddle">&nbsp;Checking availability...');

    $.ajax({ 
    type: "POST", 
    url: "check.php", 
    data: "email="+ usr, 
    success: function(msg){ 

   $("#status").ajaxComplete(function(event, request, settings){

    if(msg == 'OK')

    {
     alert ("error");

        $("#email").removeClass('object_error'); // if necessary
        $("#email").addClass("object_ok");
        $(this).html('&nbsp;<img src="tick.gif" align="absmiddle">');
    } 
    else 
    { 
        $("#email").removeClass('object_ok'); // if necessary
        $("#email").addClass("object_error");
        $(this).html(msg);
    } 

   });

 }

  });

}
else
    {
    $("#status").html('<font color="red">' +
'Enter Valid Email</font>');
    $("#email").removeClass('object_ok'); // if necessary
    $("#email").addClass("object_error");
    }

});

});
</script>

pic1=新图像(16,16);
pic1.src=“img/loader.gif”;
$(文档).ready(函数(){
$(“#电子邮件”).change(函数(){
var usr=$(“#email”).val();
如果(usr.length>=4)
{
$(“#状态”).html(‘检查可用性…’);
$.ajax({
类型:“POST”,
url:“check.php”,
数据:“email=“+usr,
成功:函数(msg){
$(“#状态”).ajaxComplete(功能(事件、请求、设置){
如果(msg=='OK')
{
警报(“错误”);
$(“#email”).removeClass('object#error');//如有必要
$(“#email”).addClass(“object#ok”);
$(this.html(“”);
} 
其他的
{ 
$(“#email”).removeClass('object#ok');//如有必要
$(“电子邮件”).addClass(“对象错误”);
$(this.html(msg);
} 
});
}
});
}
其他的
{
$(“#状态”).html(“”+
“输入有效电子邮件”);
$(“#email”).removeClass('object#ok');//如有必要
$(“电子邮件”).addClass(“对象错误”);
}
});
});
我的Check.php文件如下

<?php
// This is a sample code in case you wish to check the username from a mysql db table

if(isSet($_POST['email'])) {
$email = $_POST['email'];

$dbHost = 'localhost'; // usually localhost
$dbUsername = 'root';
$dbPassword = '';
$dbDatabase = 'jaquar_cdb';

$db = mysql_connect($dbHost, $dbUsername, $dbPassword)
 or die ("Unable to connect to Database Server.");
mysql_select_db ($dbDatabase, $db)
 or die ("Could not select database.");

$sql_check = mysql_query("select email from jaquar_contest where email='".$email."'")
 or die(mysql_error());

if(mysql_num_rows($sql_check)) {
    echo '<font color="red">The email <strong>'.$email.'</strong>'.
' is already in use.</font>';
} else {
    echo 'OK';
}
}
?>

将第一行php代码更改为:

if(设置($\u POST['email'])

因此,更新的Check.php文件:

<?php
// This is a sample code in case you wish to check the username from a mysql db table

if(isset($_POST['email'])) {
$email = $_POST['email'];

$dbHost = 'localhost'; // usually localhost
$dbUsername = 'root';
$dbPassword = '';
$dbDatabase = 'jaquar_cdb';

$db = mysql_connect($dbHost, $dbUsername, $dbPassword)
 or die ("Unable to connect to Database Server.");
mysql_select_db ($dbDatabase, $db)
 or die ("Could not select database.");

$sql_check = mysql_query("select email from jaquar_contest where email='".$email."'")
 or die(mysql_error());

if(mysql_num_rows($sql_check)) {
    echo '<font color="red">The email <strong>'.$email.'</strong>'.
' is already in use.</font>';
} else {
    echo 'OK';
}
}
?>

将第一行php代码更改为:

if(设置($\u POST['email'])

因此,更新的Check.php文件:

<?php
// This is a sample code in case you wish to check the username from a mysql db table

if(isset($_POST['email'])) {
$email = $_POST['email'];

$dbHost = 'localhost'; // usually localhost
$dbUsername = 'root';
$dbPassword = '';
$dbDatabase = 'jaquar_cdb';

$db = mysql_connect($dbHost, $dbUsername, $dbPassword)
 or die ("Unable to connect to Database Server.");
mysql_select_db ($dbDatabase, $db)
 or die ("Could not select database.");

$sql_check = mysql_query("select email from jaquar_contest where email='".$email."'")
 or die(mysql_error());

if(mysql_num_rows($sql_check)) {
    echo '<font color="red">The email <strong>'.$email.'</strong>'.
' is already in use.</font>';
} else {
    echo 'OK';
}
}
?>

为什么没有得到任何响应的问题就在这里

我不知道你为什么要用它,但你可以不用它,事实上,即使你的方法不需要它

没有
Ajaxcomplete功能时
对代码进行了一些更改

pic1 = new Image(16, 16);
pic1.src="img/loader.gif";
$(document).ready(function(){
    $("#email").change(function() {
    var usr = $("#email").val();
    if(usr.length >= 4){
        $("#status").html('<img style="width:17px;" src="img/loader.gif" align="absmiddle">&nbsp;Checking availability...');
        $.ajax({ 
        type: "POST", 
        url: "check.php", 
        data: "email="+ usr,
        dataType: 'text',
            success: function(msg){
                if(msg == 'OK'){
                 alert ("success");
                    $("#email").removeClass('object_error'); // if necessary
                    $("#email").addClass("object_ok");
                    $("#status").html('&nbsp;<img src="tick.gif" align="absmiddle">');
                } else {
                    alert ("error");
                   $("#email").removeClass('object_ok'); // if necessary
                   $("#email").addClass("object_error");
                   $("#status").html(msg);
               }
            }

        });
    } else {
        $("#status").html('<font color="red">' + 'Enter Valid Email</font>');
        $("#email").removeClass('object_ok'); // if necessary
        $("#email").addClass("object_error");
    }
    });
});
pic1=新图像(16,16);
pic1.src=“img/loader.gif”;
$(文档).ready(函数(){
$(“#电子邮件”).change(函数(){
var usr=$(“#email”).val();
如果(usr.length>=4){
$(“#状态”).html(‘检查可用性…’);
$.ajax({
类型:“POST”,
url:“check.php”,
数据:“email=“+usr,
数据类型:“文本”,
成功:功能(msg){
如果(msg=='OK'){
警惕(“成功”);
$(“#email”).removeClass('object#error');//如有必要
$(“#email”).addClass(“object#ok”);
$(“#状态”).html(“”);
}否则{
警报(“错误”);
$(“#email”).removeClass('object#ok');//如有必要
$(“电子邮件”).addClass(“对象错误”);
$(“#status”).html(msg);
}
}
});
}否则{
$(“#状态”).html(“+”输入有效电子邮件);
$(“#email”).removeClass('object#ok');//如有必要
$(“电子邮件”).addClass(“对象错误”);
}
});
});
旁注:已弃用,因此应停止使用它并开始使用MySQLi

<?php
// This is a sample code in case you wish to check the username from a mysql db table
if(isset($_POST['email'])) { //change isSet to isset (it will not make any difference)
    $email = mysql_real_escape_string($_POST['email']); //escape the string

    $dbHost = 'localhost'; // usually localhost
    $dbUsername = 'root';
    $dbPassword = '';
    $dbDatabase = 'jaquar_cdb';
    $db = mysql_connect($dbHost, $dbUsername, $dbPassword)
        or die ("Unable to connect to Database Server.");
    mysql_select_db ($dbDatabase, $db)
        or die ("Could not select database.");

    $sql_check = mysql_query("SELECT email FROM jaquar_contest WHERE email='$email'") or die(mysql_error());
        if(mysql_num_rows($sql_check) > 0) { //check rows greater then zero (although it will also not make any difference)
            echo '<font color="red">The email <strong>'.$email.'</strong>'. ' is already in use.</font>';
        } else {
            echo 'OK';
        }
}
?>

为什么没有得到任何响应的问题就在这里

我不知道你为什么要用它,但你可以不用它,事实上,即使你的方法不需要它

没有
Ajaxcomplete功能时
对代码进行了一些更改

pic1 = new Image(16, 16);
pic1.src="img/loader.gif";
$(document).ready(function(){
    $("#email").change(function() {
    var usr = $("#email").val();
    if(usr.length >= 4){
        $("#status").html('<img style="width:17px;" src="img/loader.gif" align="absmiddle">&nbsp;Checking availability...');
        $.ajax({ 
        type: "POST", 
        url: "check.php", 
        data: "email="+ usr,
        dataType: 'text',
            success: function(msg){
                if(msg == 'OK'){
                 alert ("success");
                    $("#email").removeClass('object_error'); // if necessary
                    $("#email").addClass("object_ok");
                    $("#status").html('&nbsp;<img src="tick.gif" align="absmiddle">');
                } else {
                    alert ("error");
                   $("#email").removeClass('object_ok'); // if necessary
                   $("#email").addClass("object_error");
                   $("#status").html(msg);
               }
            }

        });
    } else {
        $("#status").html('<font color="red">' + 'Enter Valid Email</font>');
        $("#email").removeClass('object_ok'); // if necessary
        $("#email").addClass("object_error");
    }
    });
});
pic1=新图像(16,16);
pic1.src=“img/loader.gif”;
$(文档).ready(函数(){
$(“#电子邮件”).change(函数(){
var usr=$(“#email”).val();
如果(usr.length>=4){
$(“#状态”).html(‘检查可用性…’);
$.ajax({
类型:“POST”,
url:“check.php”,
数据:“email=“+usr,
数据类型:“文本”,
成功:功能(msg){
如果(msg=='OK'){
警惕(“成功”);
$(“#email”).removeClass('object#error');//如有必要
$(“#email”).addClass(“object#ok”);
$(“#状态”).html(“”);
}否则{
警报(“错误”);
$(“#email”).removeClass('object#ok');//如有必要
$(“电子邮件”).addClass(“对象错误”);
$(“#status”).html(msg);
}
}
});
}否则{
$(“#状态”).html(“+”输入有效电子邮件);
$(“#email”).removeClass('object#ok');//如有必要
$(“电子邮件”).addClass(“对象错误”);
}
});
});
旁注:已弃用,因此应停止使用它并开始使用MySQLi

<?php
// This is a sample code in case you wish to check the username from a mysql db table
if(isset($_POST['email'])) { //change isSet to isset (it will not make any difference)
    $email = mysql_real_escape_string($_POST['email']); //escape the string

    $dbHost = 'localhost'; // usually localhost
    $dbUsername = 'root';
    $dbPassword = '';
    $dbDatabase = 'jaquar_cdb';
    $db = mysql_connect($dbHost, $dbUsername, $dbPassword)
        or die ("Unable to connect to Database Server.");
    mysql_select_db ($dbDatabase, $db)
        or die ("Could not select database.");

    $sql_check = mysql_query("SELECT email FROM jaquar_contest WHERE email='$email'") or die(mysql_error());
        if(mysql_num_rows($sql_check) > 0) { //check rows greater then zero (although it will also not make any difference)
            echo '<font color="red">The email <strong>'.$email.'</strong>'. ' is already in use.</font>';
        } else {
            echo 'OK';
        }
}
?>

不客气,别忘了将答案标记为正确:)不客气,别忘了将答案标记为正确:)