Documentation « Le livre de Yacs « Guide de développement «
Captcha anti-robot
, je vous propose d'expliquer comment mettre en place un filtre pour sécuriser vos overlays.Explication très simple par l'exemple;
Je développe un systeme pour permettre à un utilisateur anonyme de poster une annonce et de créer un compte utilisateur dans la foulée (site de petites annonces).
Premier test de publication d'une annonce, YACS me demande de lui prouver que je ne suis pas un robot !
Après avoir essayer de lui prouver par tous les moyens imaginables, je me suis résolu à fouiller le code de Yacs pour comprendre le problème.
En fait Yacs peut être configuré pour autoriser la publication aux surfeurs anonymes, mais attend néanmoins un minimum de sécurité. Il utilise la technique du captcha qui demande à l'utilisateur de saisir une chaine de caractère générée aléatoirement.
Le controle est fait dans le script articles/edit.php Une simple recherche sur le mot "robot" dans ce script m'a permis non seulement de trouver où était fait le contrôle, mais également de comprendre que le captcha est très facilement intégrable à un overlay en plaçant le code suivant dans la fonction get_fields().
// stop robots
if($field = Surfer::get_robot_stopper()) $fields[] = $field;
La fonction get_robot_stopper se charge d'afficher le captcha, et le contrôle se fait automatiquement dans le articles/edit.php
