我有一个我多年前在ColdFusion建立的假日网站。我不是最好的程序员,因此我征求了一位资深程序员的帮助来完成“繁重的工作”。不幸的是,他现在还不在。
问题:在网站上,有一个表格供孩子们给圣诞老人发电子邮件。为了让他们回来,我给他们发了一个“秘密密码”他们可以用来第二天回到网站以获得圣诞老人的回复(圣诞老人一年中的这个时候超级忙,无法立即回复 - 更现实。)我收集他们的电子邮件,名字和“愿望清单”信息并将其填入数据库。
我遇到的问题是,合理比例的孩子/父母错误输入他们的电子邮件地址(例如[email protected] vs [email protected]),导致他们永远无法获得他们的“秘密密码”或从北极收到回复一点都没有!当然,这对圣诞老人信徒来说可能是一个挑战,他们想知道为什么圣诞老人永远不会回到他们身边。
有没有办法在将电子邮件地址输入数据库之前进行实时检查以查看电子邮件地址是否有效,并抛出一个响应页面,说明“您输入的电子邮件地址无效。请检查您拼写的是否正确”或类似的东西。
〜北极需要你的帮助。
你尝试过使用mailcheck吗?它是一个Javascript库和jQuery插件,当您的用户在电子邮件地址拼错它时,它会建议一个正确的域。该脚本的开发人员声称它已将其注册确认电子邮件退回减少了50%。有jQuery和非jQuery用法的说明。
https://github.com/mailcheck/mailcheck
在这里查看现场演示(并输入“[email protected]”)。
在使用CFMail之前,您需要使用ColdFusion执行服务器端验证,否则用户将收到可见错误。使用isvalid("email", Form.Email)
确定地址是否有效。
而现在我要让圣诞老人失望吗?天啊...
这不可能。
你不能检查拼写错误。例?您的示例:gmial.com有效。
你可以做一个粗略的检查one of more characters followed by an @ sign followed by two or more characters followed by a dot followed by two or more characters
有很多正则表达式可以在网上找到,只需要谷歌“正则表达式电子邮件javascript”。请选择一个简单的。
唯一的事情是希望电子邮件发送过程很快,并添加一两行要求他们检查他们的电子邮件,如果在一两分钟内没有任何内容,他们必须检查他们的电子邮件是否正确。您可以在他们向您发送数据的同一页面上输入密码,以提高他们保持该页面打开的机会。