我正在制作一个网站,它有一个在php中验证的表单。当人们发布表单时,电子邮件会发送到$email变量,我会检查格式是否正确。然而,我还没有找到一段代码来检查格式是否正确(如果它的有效性现在无关紧要),我找到了php自己的函数,但它不检查瑞典字母,我还找到了另一个函数,它检查邮件格式,但如果你有一封格式为xxx.yy@zz.aa.只有当格式为xxx@zz.aa.
我将非常感谢任何帮助,使这项工作,并找到一个行之有效的功能。
您可以使用以下regexp:
if(preg_match("/^'b[A-ZÅÄÖåäö0-9._%+-]+@[A-ZÅÄÖåäö0-9.-]+'.[A-Z]{2,4}'b$/i",$email)){
//mail is valid
}
这将验证您的åäö@adressö.se等
您可以在电子邮件地址中检查的一件事是它包含@。检查一下,在任何地方都没有发现任何代码
我个人建议您使用javascript或jquery在客户端验证表单如果所有表单验证都被传送到服务器,那么服务器负载就会增加,也会重新提交无效条目。
用于电子邮件验证的jquery代码:
function ValidateEmail(email) {
var expr = /^(['w-'.]+)@(('[[0-9]{1,3}'.[0-9]{1,3}'.[0-9]{1,3}'.)|((['w-]+'.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(']?)$/;
return expr.test(email);
};
$("#id").blur(function(){
if(!ValidateEmail($("#id").val())){
//your code
}
else {
//your code
}
})