-2

我正在尝试检查电子邮件地址是否存在并且通过 smtp 服务器是否有效,但我正在尽可能准确地得到答案。

4

2 回答 2

0

证明电子邮件有效的唯一方法是在注册过程后进行电子邮件确认。您应该向新订阅/注册的用户发送一个链接,其中包含有关他的电子邮件确认的参数。

例如:注册了电子邮件 aaa@bbb.ccc 的新用户,并将他的电子邮件保存到 ID 为“as23kja45”的数据库中。你应该给他发一封带有链接yoursite.com/confirmation.php?id=as23kja45的电子邮件。单击此链接后,您将在参数值中读取 id,检查数据库是否存在,如果为 true => 您有有效的电子邮件地址

在发送此类链接之前,您应该通过一些电子邮件验证器检查电子邮件,以证明该电子邮件满足电子邮件地址的形式。

于 2014-04-21T12:14:33.317 回答
0

没有 100% 可靠的方法来检查电子邮件地址的有效性。不过,您可以做一些事情来至少清除明显无效的地址。

电子邮件地址出现的问题实际上与蜗牛邮件的问题非常相似。以下所有三点也可用于发送蜗牛邮件(只需将 DNS 记录更改为物理地址即可)。

1.检查地址格式是否正确

检查电子邮件地址的格式非常困难,但是 PHP 有一个验证过滤器可以尝试这样做。过滤器不处理评论和折叠空格,但我怀疑有人会注意到。

2.检查域名的DNS记录是否存在

如果存在 DNS(域名系统)记录,那么至少有人设置了它。这并不意味着该地址有电子邮件服务器,但如果该地址存在,则更有可能。

3.发送验证邮件到地址

这是查看某人是否在电子邮件地址的另一端的最有效方法。如果没有以有序的方式回复确认电子邮件(例如 3 小时),那么地址可能存在问题。

于 2014-04-21T12:17:19.923 回答