我正在努力避免在MySQL数据库中添加重复的电子邮件地址。有没有javascript方法可以在不重新加载的情况下进行检查?就像在Gmail登录表单中一样?
使用验证库:http://docs.jquery.com/Plugins/Validation/Methods/remote
您的javascript:
$("#yourFormId").validate({
rules: {
email: {
required: true,
email: true,
remote: {
url: "checkmail.php",
type: "post"
}
}
},
messages: {
email: {
required: "Please Enter Email!",
email: "This is not a valid email!",
remote: "Email already in use!"
}
}
});
checkmail.php:
<?php
$registeredEmails = array('test1@test.com', 'test2@test.com', 'test3@test.com');
$requestedEmail = $_POST['email'];
if( in_array($requestedEmail, $registeredEmails) ){
echo 'false';
}
else{
echo 'true';
}
?>
您可以在mysql发布的电子邮件地址中搜索,而不是$registeredEmails数组:)