views:

55

answers:

2

On a website I'm working on, I would like to collect a user's name and email address to add to a mailing list.

My question is NOT how to do this, I know that part.

What I would like to know is, how would I do this so as to avoid spam, robots, etc?

I would like to prevent as much non-human interaction as possible, while keeping the HTML interface as easy to use as possible.

I am using PHP as a back-end, if it matters.

Thanks,
Austin

+3  A: 

see this - http://stackoverflow.com/questions/1296686/how-to-prevent-spam-without-captchas-or-a-centrally-managed-system-e-g-akismet/

Arpit Tambi
accepted, for the honeypot solution. Thanks!
Austin Hyde
A: 
  • CAPTCHA – I suggest use some sort of 3D CAPTCHA, because it's much harder (maybe even impossible?) for robots to read.
  • Use Javascript, somehow.
  • Question that only human can answer.
Jakub Kulhan