Validation d'un formulaire avec code en image

Eléphanteau du PHP | 43 Messages

04 déc. 2006, 15:33

Bonjour à tous,

je suis en train de créer une table utilisateur. Il y a donc un formulaire d'inscription et cette inscription donnera des droits d'accès aux sondages, forums, etc...

Souvent, sur le net on remarque qu'avant de valider son formulaire, on doit recpier une série de caractères qui sont présenté déformes sous forme d'une image.

Je voudrais savoir quel est l'interet (et la nécessité) et comment fonctionne t il (en gros).

Merci

Avatar du membre
ViPHP
ViPHP | 3008 Messages

04 déc. 2006, 15:41

Il s'agit d'un captcha, pour lutter contre le spam et les robots.

:google: et recherches ce mot ;)

Mammouth du PHP | 19672 Messages

04 déc. 2006, 15:42

On appelle ça un "captcha" : mets ce mot dans :google:, tu vas avoir de quoi lire jusqu'à Noël... 2008

En gros, l'idée, c'est d'interdire l'utilisation de formulaire par des robots, basé sur le principe que les fonctions OCR d'un robots sont trop limitées pour pouvoir lire une image. Donc si le robot n'est pas capable de remplir correctement le champ en question, le formulaire ne sera pas validé.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

04 déc. 2006, 15:43

Bonjour,

C'est un test pour s'assurer qu'il s'agit bien d'un utilisateur humain derrière le pc, et pas un robot en train de flooder ton formulaire. Le principe consiste à générer un texte affiché sur une image pour qu'il ne soit pas (ou plus exactement très difficilement) capturable par un robot qui lirait ta page.

L'humain va saisir les caractères qu'il voit et lorsqu'il valide, tu compares la chaine avec celle générée. Le robot ne voyant pas l'image, il ne trouvera pas la chaine et son post sera automatiquement rejeté.

Une petite recherche sur le mot "captcha" devrait te donner toutes les infos dont tu as besoin :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...