有哪些方法可以通过PHP / MySQL自动处理垃圾邮件发送者

问题描述:

I am currently creating a news ranking application wherein I have users connected to one another, and can post news items to a database. Users can vote on said news items within a rating of 10 - 1. 10 giving the item the highest possible vote and in turn this determines the ranking of future news items a user may see once logged in.

Currently my approach at dealing with spammers automatically, involves using a threshold whereby say the average rating of the total number of votes that a user has voted on falls below this threshold. Then the relationship between two users will be automatically deleted.

This approach is okay for individual relationships but, let's say a spammer can be identified very quickly by a number of users. How can I deal with this problem more effectively?

我正在创建一个新闻排名应用程序,其中我有用户相互连接,并可以将新闻项目发布到 数据库。 用户可以在10-1的评级内对所述新闻项目进行投票.10给予该项目最高可能的投票,并且这又确定用户在登录后可以看到的未来新闻项目的排名。 p>

目前,我自动处理垃圾邮件发送者的方法涉及使用阈值,即用户投票的总投票数的平均评级低于此阈值。 然后将自动删除两个用户之间的关系。 p>

这种方法适用于个人关系,但是,假设很多用户可以很快识别垃圾邮件发送者。 如何更有效地处理这个问题? p> div>

One thing that I see happening more and more is the honeypot method. Add some fields in your form and style them in such a way that they are not visible to the end user using css. Then in you code check if the field has a changed (default) value. If so, it is a bot (because humans cannot see and thus change the fields).

If you go this route, don't forget to change the tabstop of those fields. I always enter forms using tab button and it is annoying to tab to a field you cannot see. And even more annoying when I am recognized as a bot then too!

Also, a nice thing to do is saving the spam comment to the database and then showing it on your site, but only to the IP address that posted it. That way, the bot will (hopefully) think that it succeeded posting and move on.

You can protect your vote with using captcha (google ReCaptcha, for example), but it's ridiculous solution which used most of sites. If you like your users use services like uniqpin.com