我在注册表单中添加了一个输入字段,用于通过正则表达式验证值,以避免垃圾邮件自动注册。我不知道它是否会起作用,或者垃圾邮件机器人会通过它。
这是我的代码:
<label>Type "Word" in the field*</label>
<input pattern="(Word|word)" type="text" name="antispamfield"
id="antispamfield" required/>
用户现在必须输入“word”才能完成注册。但是,垃圾邮件是否会通过验证?有没有人有更好的想法,而不是使用正则表达式或JavaScript?
答案 0 :(得分:2)
垃圾邮件发送者可以通过验证吗?
是。容易。
如果浏览器可以读取“秘密词”(显然它可以),那么垃圾邮件发送者可以阅读它:它显然存在于他的curl
(或等效的)输出中。
因此,他可以调整他的脚本以阅读<label>Type "Word"</label>
字段中的字词,并自动在antispamfield
文字输入字段中输入该字词。
其他想法
有许多方法可以抵御垃圾邮件制造者。它们都不是完美的。其中一些是:
Are you Human?
挑战其中一些需要数据库。
答案 1 :(得分:1)
您可以在验证中使用验证码(http://www.captcha.net/)。我认为这比你的强大得多。另外,只需注意:您可能希望在您的模式中包含“WORD”,因为有些人会为此类验证输入所有大写字母。
答案 2 :(得分:-1)
我会使用一些文字问题,大多数机器人很难猜到,比如“谁是美国第二任总统?”并在发送表单时通过服务器脚本检查答案。