是否有电子邮件验证的替代方案?

时间:2011-08-13 15:43:26

标签: php mysql email smtp

我没有升级就无法访问SMTP服务器,我现在无法访问。

我是否可以使用任何其他方法来确保用户在我的数据库中输入有效的电子邮件地址。我必须至少在接下来的几周内免费上网主机(目前为xtreemhost)。我刚刚完成了网站,并希望先测试它。

我在网站上使用php-mysql。

3 个答案:

答案 0 :(得分:2)

简介

您可以验证电子邮件的表单,这意味着您可以判断它是否是有效的电子邮件地址,但无法检查电子邮件地址是否实际存在

答案

至于验证本身,有很多方法可以做到,

  • 一种方法是使用filter_var()

    filter_var('bob@example.com', FILTER_VALIDATE_EMAIL)
    

旁注:建议不要使用REGEX来验证电子邮件。如果你这样做,Jon Skeet会在晚上来找你。

答案 1 :(得分:0)

您可以做的一件事是通过WHOIS查询或ping检查域名是否有效。如果有人输入john@doe.com,你会尝试查找doe.com并ping该域名。如果域不存在,则电子邮件无效。

同时要求输入两次电子邮件对我来说也是一件好事 - 人们不再在电子邮件中犯拼写错误。

通过regexp对电子邮件进行良好的验证也是必须的。

答案 2 :(得分:-1)

以下是我最常见的从最简单到最准确的列表。

  • 正则表达式 - 检查并确保它是有效的电子邮件格式。我已经在Stack Overflow上看到了一些很好的代码片段 - 免费且简单但不确定电子邮件,甚至域名是否确实存在。

  • 检查域是否有MX-Server - 比regex更准确,因为至少实时检查域 - 免费且相当简单,但不确定用户是否存在。

  • 使用商业解决方案 - 最准确(验证实际电子邮件地址是否有效且可以接受消息),易于实施(REST / SOAP),但不是免费的

希望这有帮助。