Bien le bonsoir,
C'est un sujet qui me trottait dans la tête depuis quelques temps, le voici tout beau tout chaud.
Mettez en œuvre les captchas avec Zend Framework
Qu'en pensez-vous ?
Bien le bonsoir,
C'est un sujet qui me trottait dans la tête depuis quelques temps, le voici tout beau tout chaud.
Mettez en œuvre les captchas avec Zend Framework
Qu'en pensez-vous ?
hello,
L'article en lui-même est vraiment très bien par contre moi c'est le principe des captchas que j'aime pas.
Pour éviter du spam ou de la pub sur un site le principe est de compliquer le process, ce qui handicap l'utilisateur légitime, sans parler des problématique d'accessibilité.
Personnellement j'utilise plutôt des techniques de type honeypot ou timer pour détecter des comportement de robots ce qui reste transparent pour les utilisateurs légitimes.
Merci pour ce tut bien fait , j'ajoute que apres la génération des images
Il faut penser à un script qui supprime les anciennes images générées, si non le répertoire ne sera jamais vidé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 $captcha = new Zend_Form_Element_Captcha('captcha', array( 'label' => "Merci de confirmer que vous êtes humain", // paramétrage en reprenant les noms de méthodes vus précédemment 'captcha' => array( "captcha" => "Image", "wordLen" => 8, "font" => "./tahoma.ttf", "height" => 100, "width" => 300, "fontSize" => 50, "imgDir" => "out/", "imgUrl" => "out/" )
Sympa l'article cela simplifie la mise en œuvre de captcha.
Par contre difficile (impossible ?) à utiliser dans une application où la gestion ne passe pas par le ZF.
Voici un exemple un peu plus complet, utilisant le composant ZF2 Captcha:
Le rendu doit absolument se faire dans une balise <pre>, sinon le captcha texte-art qui est une chaîne de caractères multi-lignes sera affiché chaque tronçon d'une lettre les uns derrières les autres (chaque caractère étant découpé en 6 lignes d'un tableau).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 use Zend\Captcha as captcha_human; //Origine: humaine? $oCaptcha = new captcha_human\Figlet(array( 'name' => 'foo', 'wordLen' => 7, 'timeout' => 300, )); echo '<!doctype html>'; echo '<html>'; echo '<head>'; echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>'; echo '</head>'; echo '</body>'; echo '<pre>'; echo $oCaptcha->getFiglet()->render('Bonjour'); echo '</pre>'; echo '</body>'; echo '</html>';
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager