如何检查电子邮件地址是否存在?

时间:2013-11-15 12:51:38

标签: php

最近我注意到有些人注册了一封虚假的电子邮件,如“blablabla@blablabla.bla”

我想检查在注册表中输入的电子邮件是否有效且存在

谢谢...

我不想发送任何东西:/当我搜索时,我发现一些名为Mx记录的东西如何使用它?

2 个答案:

答案 0 :(得分:4)

向相关电子邮件地址发送一封电子邮件,其中包含指向您网站的链接。此链接应包含与相关用户帐户绑定的唯一令牌(或者,您也可以简单地将用户ID添加到URL,以便您知道要对其进行验证的帐户)。当用户点击它时,您的站点应验证令牌。如果令牌有效,您的应用程序可以假定有问题的电子邮件地址存在且它属于用户。示例链接:

  

http://mywebsite.com/validate.php?user=2934&validate=37dbhjibh8879uhe98098ushy89d3dd3

其中2934是用户ID,37dbhjibh8879uhe98098ushy89d3dd3是您发出并需要验证的令牌。

当用户注册时,您可以使用以下命令检查电子邮件是否符合RFC 822语法:

if(filter_var($email, FILTER_VALIDATE_EMAIL)) {
     //Valid email!
}

答案 1 :(得分:0)

如果输入的电子邮件地址的域名使用以下代码,则可以使用有效的MX记录:

checkdnsrr(preg_replace('/^[^@]+@/', '', $emailAddress), 'MX');

但checkdnsrr()在Windows平台上不起作用

相关问题