PHP表单字段(显示:无)垃圾邮件防护

时间:2022-03-16 09:50:03

I am working on the re-development of a clients website and am looking for an alternative to a captcha in order to make the user experience a little nicer. I am redeveloping the various forms throughout the site and am trying to find the best solution for preventing spam.

我正在重新开发一个客户网站,我正在寻找一个替代验证码,以使用户体验更好一点。我正在重新开发整个网站的各种表单,并试图找到防止垃圾邮件的最佳解决方案。

The clients have specified that they do not want me to use recaptcha or anything else that requires an external web service or calling any external urls, etc.

客户已指定他们不希望我使用recaptcha或任何其他需要外部Web服务或调用任何外部URL等的内容。

I have heard before that creating a field called 'email' for example and setting its display to 'display:none'. When the form is submitted I would then check (php) to see if the email field has a value and if so then the submission is spam and to not continue with the process.

我之前听说过创建一个名为'email'的字段,并将其显示设置为'display:none'。提交表单后,我会检查(php)以查看电子邮件字段是否有值,如果是,那么提交是垃圾邮件并且不继续该过程。

Is this method sound? The site receives a very large amount of traffic and I assume would get a very large amount of spam without the captcha control they had been using on the previous form.

这种方法听起来好吗?该网站收到了大量的流量,我认为如果没有他们在之前表单上使用的验证码控件,就会收到大量的垃圾邮件。

All suggestions welcome!

欢迎所有建议!

2 个解决方案

#1


3  

There's quite a nice article on this here - http://doteduguru.com/id3038-are-you-human-is-captcha-needed-some-alternatives.html

这里有一篇很好的文章 - http://doteduguru.com/id3038-are-you-human-is-captcha-needed-some-alternatives.html

I think you are right to consider hidden fields. The only downside is people with CSS turned off but do you really get many of them?

我认为你考虑隐藏的领域是对的。唯一的缺点是人们关闭了CSS,但你真的得到了很多吗?

The fanciest alternative I've found is the use of a slider - http://theymakeapps.com/users/add

我发现的最好的选择是使用滑块 - http://theymakeapps.com/users/add

#2


0  

One method I have used in the past is to have two fields (call them whatever you want). One has a pre-set value, and the other is blank. The user just has to copy the random string over. Just make sure to check that both the values are the same, and also that the original value hasn't been changed.

我过去使用的一种方法是拥有两个字段(无论你想要什么,都可以调用它们)。一个具有预设值,另一个为空白。用户只需要复制随机字符串。只需确保检查两个值是否相同,以及原始值是否未更改。

Also, if you do want to implement something captcha-like without the external links, you can use the gd module in php to create the image/text.

此外,如果你想在没有外部链接的情况下实现类似验证码的东西,你可以使用php中的gd模块来创建图像/文本。

#1


3  

There's quite a nice article on this here - http://doteduguru.com/id3038-are-you-human-is-captcha-needed-some-alternatives.html

这里有一篇很好的文章 - http://doteduguru.com/id3038-are-you-human-is-captcha-needed-some-alternatives.html

I think you are right to consider hidden fields. The only downside is people with CSS turned off but do you really get many of them?

我认为你考虑隐藏的领域是对的。唯一的缺点是人们关闭了CSS,但你真的得到了很多吗?

The fanciest alternative I've found is the use of a slider - http://theymakeapps.com/users/add

我发现的最好的选择是使用滑块 - http://theymakeapps.com/users/add

#2


0  

One method I have used in the past is to have two fields (call them whatever you want). One has a pre-set value, and the other is blank. The user just has to copy the random string over. Just make sure to check that both the values are the same, and also that the original value hasn't been changed.

我过去使用的一种方法是拥有两个字段(无论你想要什么,都可以调用它们)。一个具有预设值,另一个为空白。用户只需要复制随机字符串。只需确保检查两个值是否相同,以及原始值是否未更改。

Also, if you do want to implement something captcha-like without the external links, you can use the gd module in php to create the image/text.

此外,如果你想在没有外部链接的情况下实现类似验证码的东西,你可以使用php中的gd模块来创建图像/文本。