PhpRiot
Download This Article
Download this article or the entire “Anti-Spam Techniques In PHP” series with all listings and files.




More information
Related Articles
Browse Articles
Ajax (4), APC (1), CAPTCHA (1), CSS (3), Debugging (1), File Upload (1), Google (3), Google Maps (2), JavaScript (11), JSON (2), MVC (1), MySQL (6), onbeforeunload (1), OOP (1), PHP (27), PhpDoc (1), PostgreSQL (6), Prototype (10), Reflection (1), RFC 1867 (1), Robots (1), Scriptaculous (1), SEO (1), Sessions (1), SimpleXML (1), Smarty (5), SOAP (1), SPL (1), Templates (2), W3C (1), XHTML (1), Zend Framework (1), Zend_Search_Lucene (1)

PhpRiot Newsletter
Your Email Address:

Anti-Spam Techniques In PHP, Part 2

Drawbacks Of CAPTCHA

While CAPTCHA is very useful and widely adapted across the Internet, there are some drawbacks to using it.

Probably the biggest issue is to do with accessibility. People that are vision impaired may have great difficulty in using your CAPTCHA forms, so you should provide alternatives. At minimum, you should offer a description of it and how it works, and a contact form that people can contact you with so you can complete the form for them.

In fact, even people who are not vision impaired may have difficulty in using CAPTCHA. Sometimes the generated images are just really hard to read. So make sure they are random (e.g. even if the phrase stays the same, then the noise image and/or text placement changes). Also indicate to the user that they can refresh the page so the image is recreated and possibly easier to read.

One last note to be aware of, is that CAPTCHA is not totally foolproof. People have written bots that do OCR (Optical Character Recognition) in order to foil these tests. Obviously the more complex the CAPTCHA image becomes, the harder it is to do text recognition on. There’s a bit of information on Breaking a Visual CAPTCHA at UC Berkeley Computer Vision Group.

In This Article


Tagged in ,