我是jquery的新手..作为表单验证我使用以下表单验证代码..
我添加了远程方法来检查电子邮件存在..但它总是说电子邮件“已经存在”
以下是代码的片段......
<script>
$(document).ready(function(){
$("#f2").validate({
debug: false,
rules: {
email: {
required:true,
email:true,
remote:'checkemail.php'
},
comments: {
required:true
}
},
messages:
{
email:{
required:"Please enter valid email",
remote:"Already Exist"
}
}});
});
</script>
这是表单代码..
<form name="f2" id="f2" method="post" action="">
<div>
<label >Email</label>
<input type="text" name="email">
</div>
</form>
这是checkemail.php代码..
<?php
$email=$_GET['email'];
$query="select email from emails where email='$email'";
$res= mysql_query($query);
$cou= mysql_num_rows($res);
if($cou>0)
{
echo "true";
}
else{
echo "false";
}
?>
更新
我错过了数据库连接..在checkemail.php文件中放入数据库连接后,远程方法没有显示任何消息..并且表单提交时没有检查电子邮件已经存在为什么?
为什么表单表现得像这样?任何想法..
欢迎任何建议......
答案 0 :(得分:1)
几天前我经历了类似的情况,我已经解决了这个问题。在用户表单中,我必须使用远程检查重复的用户名。我的用户表单字段如
然后我将验证器脚本用作
$('#addRecord').validate({
ignore:"",
rules : {
user_name : {
required :1,
minlength :3,
remote :"check_unique.php?field=user_name&action=add"
},
firstname : {
required :1,
},
lastname : {
required :1,
},
email : {
required :1,
},
},
在check_unique.php中,我和你的一样,我唯一做的就是
echo json_encode(true);或echo json_encode(false);
尝试将json_encode用于您的真或假,它应该可以解决问题。
答案 1 :(得分:0)
如果这样的语句修改你 如果($凑大于0) { echo'false'; } 其他{ echo'true'; }