如果电子邮件存在,如何空白输入值

时间:2017-11-08 04:37:47

标签: javascript sql

如果电子邮件存在,我想空白输入值,否则不要空白。 我试过这个脚本,但无法在条件下空白。 我的脚本是

<script>
function checkemailAvailability() {
$("#loaderIcon").show();
jQuery.ajax({
url: "check_availability.php",
data:'emailid='+$("#emailid").val(),
type: "POST",
success:function(data){
$("#email-availability-status").html(data);
$("#emailid").val("");
$("#loaderIcon").hide();
},
error:function (){}
});
}
</script>

我的check_availability.php是

<?php 
include_once '../config/database.php';
//code check email
if(!empty($_POST["emailid"])) {
     $database = new Database();
    $db = $database->getConnection();
    $query = $db->query("SELECT email FROM login WHERE email='" . $_POST["emailid"] . "'");
        $query->execute();
    $r = $query->fetch(PDO::FETCH_ASSOC);

if($r>0)echo "<span style='color:red'>Email already exit</span>";
    else echo "<span style='color:green'>Email Available</span>";

}
?>

请解决此问题。提前谢谢。

2 个答案:

答案 0 :(得分:1)

当电子邮件地址可用时,AJAX success在两种情况下都返回true。

您需要测试AJAX答案的值,并且如果该值应为空白,则需要做出决定。

check_availability.php(第11-12行)

echo $r > 0 ? 'exists' : 'available';

JS

success:function(data){
    if (data === 'exists') {
        $("#email-availability-status").html('<span style="color:red">Email already exists</span>');
        $("#emailid").val("");
        $("#loaderIcon").hide();
    } else {
        $("#email-availability-status").html('<span style="color:green">Email Available</span>');
        $("#loaderIcon").hide();
    }
}

答案 1 :(得分:0)

PHP

<?php 
include_once '../config/database.php';
$res = 1;
$msg = "<span style='color:green'>Email Available</span>";
if(!empty($_POST["emailid"]))
{
    $database = new Database();
    $db = $database->getConnection();
    $query = $db->query("SELECT email FROM login WHERE email='" . $_POST["emailid"] . "'");
        $query->execute();
    $r = $query->fetch(PDO::FETCH_ASSOC);
    if($r>0)
    {
        $res = 2;
        $msg = "<span style='color:red'>Email already exit</span>";
    }
}
echo json_encode(array( 'res'=>$res , 'msg'=>$msg ));
?>

JS

dataType : 'json',
success:function(data){
    $("#email-availability-status").html(data.msg);
    if( data.res == 2 )
        $("#emailid").val("");
    $("#loaderIcon").hide();
},

如果你以json的形式交换数据会更好。 因此,如果需要,您可以在结果中传递多个参数