我在网页上编码电子邮件地址验证时遇到问题。
第一步,检查输入是否像 someone@somewhere.tld 一样有效。但是第二次检查,如果电子邮件已经存在于数据库中,似乎根本不起作用。
我正在使用 jQuery 验证插件。
到目前为止,这是我的代码:
从 register.php 中提取:
<form action="addKunde.php" id="contact-form" method ="post" class="form-horizontal">
<div class="control-group">
<label class="control-label" for="email">E-Mail-Addresse</label>
<div class="controls">
<input type="text" class="input-xlarge" name="email" id="email">
</div>
</div>
<script src="js/jquery.min.js"></script>
<script src="js/jquery.validate.js"></script>
<script src="script.js"></script>
从 script.js 中提取:
$(document).ready(function(){
$('#contact-form').validate({
rules: {
email: {
maxlength: 100,
required: true,
email: true,
remote: {
url : "check.php",
type : "post"
}
}
},
highlight: function(element) {
$(element).closest('.control-group').removeClass('success').addClass('error');
},
success: function(element) {
$(element).addClass('valid').closest('.control-group').removeClass('error').addClass('success');
}
});
});
从 check.php 中提取:
<?php
include('mysql.php');
$email = trim(strtolower($_POST['email']));
$email = mysqli_real_escape_string($con, $username);
$result = mysqli_query($con, "SELECT * FROM Kunde WHERE EMail = '$email' LIMIT 1;");
$num = mysqli_num_rows($result);
if($num == 0){
echo "true";
} else {
echo "E-Mail-Adresse schon registriert.";
}
mysqli_close($con);
?>
我已经搜索了几个小时,遵循各种不同的说明,甚至尝试使用 jQuery-Validation 的 addMethod 实现自己的验证方法。
我希望有一个人可以帮助我。
非常感谢!