2013-12-09 77 views
0

我有一个电子邮件验证,应该工作来验证电子邮件。 真实情况是:[email protected][email protected][email protected] 另一个错误。 所以我对这个功能代码accessrules型号: Email Validation FailedYii电子邮件验证失败

但是,当我尝试注册,它说的错误,虽然我已经进入了正确的格式。 这是我的错误 Email Validation Failed

我试图解决它,但仍然错误。任何人都可以告诉我如何解决它?谢谢所有

+0

请注意:我正在考虑使用此功能,并且它的设置都正确,并且大部分时间都可以使用,但不幸的是它随机失败(肯定使用Ajax触发的验证。) 警告“可能会失败,原因是临时性问题“应该读取”将针对非常着名的域随机失败,但如果您重复验证,则会起作用。“ (!)我没有看过源代码,但我假设它只是查找MX记录,所以基本上检查电子邮件地址的域名部分是否有关联的电子邮件服务器。我的验证失败了,例如Hotmail的。 –

回答

0

checkMX是检查电子邮件地址的MX记录。默认为false。要启用它,您需要确保PHP函数'checkdnsrr'存在于您的PHP安装中。请注意,即使电子邮件可交付,此检查也可能因暂时性问题而失败。

0

您应该将您的电子邮件验证脚本放在模型规则中,而不是控制器的accessrules中。 试试这个

array("email","patern","your regex for validation","message" => "Email is not correct"), 

把你的模型规则功能阵列内这个数组这会为你工作。

+0

谢谢,我已经把它放在我的模型上,并且我发现了错误,我只是删除了'checkMX'=> true。 – gultomicro

+0

这是什么checkMX? –