<!DOCTYPE HTML>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Amateur</title>
<link rel="stylesheet" href="css/reset.css" type="text/css">
<script src="http://code.jquery.com/jquery-1.8.0.js">
function check_email()
{
var email=$("#txtEmail").val();
$.ajax(
{
type:"POST";
url:"index.php";
data:"email="+email,
success:function(msg)
{
$("#chkEmail").html(msg);
}
});
return false;
}
</script>
</head>
<body>
<form method="post">
<label for="txtEmail">E-mail:</label>
<input id="txtEmail" name="email" type="email" onblur="return check_email()">
<label id="chkEmail" for="txtEmail"></label>
<?php
if(isset($_POST['email']))
{
$user='root';
$pdo=new PDO('mysql:host=localhost;dbname=class;charset=utf8',$user);
$email=$_POST['email'];
$stmt=$pdo->prepare('SELECT email from tbl_users WHERE email=:email LIMIT 1');
$stmt->execute(array(':email'=>$email));
if($stmt->rowCount()>0)
{
echo 'E-mail already use.';
}
else
{
echo 'E-mail not use.';
}
}
?>
</form>
</body>
</html>
我仍然是PHP和JQuery的入门者,我想知道如何解决此类错误?我从萤火虫检查。流程是,用户输入完电子邮件后,它将自动从数据库中检查电子邮件是否存在。并且预期的输出未显示在我的页面中。
最佳答案
您缺少选择器上的引号,使用分号而不是逗号分隔ajax函数中的参数,而不是逗号等。
function check_email() {
var email=$("#txtEmail").val();
$.ajax({
type:"POST",
url:"index.php",
data: {email: email},
success:function(msg) {
$("#chkEmail").html(msg);
}
});
return false;
}