最近我注意到有些人使用虚假电子邮件注册,例如"blablabla@blablabla.bla"
我想检查在注册表中输入的电子邮件是否有效且存在
谢谢..
我不想发送任何东西:/当我搜索时,我发现一些叫做 Mx 记录如何使用它的东西?
向相关电子邮件地址发送一封电子邮件,其中包含指向您网站的链接。此链接应包含与相关用户帐户绑定的唯一令牌(或者,您也可以简单地将用户的 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!
}
如果输入的电子邮件地址的域具有有效的 MX 记录,则可以使用以下代码:
checkdnsrr(preg_replace('/^[^@]+@/', '', $emailAddress), 'MX');
但是 checkdnsrr() 在 Windows 平台上不起作用