Zend_Service_ReCaptchaIntroductionZend_Service_ReCaptcha fournit un client pour le Service Web reCAPTCHA. D'après le site de reCAPTCHA,
"reCAPTCHA est un service gratuit de CAPTCHA qui aide à la numérisation de livres."
Chaque reCAPTCHA requière que l'utilisateur saisisse 2 mots, le premier est le captcha,
et le second est issu de texte scanné que les OCR (Optical Character Recognition) ne
peuvent identifier.
Pour utiliser le service reCAPTCHA, vous devez créer un compte et enregistrer un
ou plusieurs domaines d'utilisation afin de générer une clé publique et une
privée.
Utilisation la plus simple
Instanciez un objet Zend_Service_ReCaptcha en lui passant
vos clés publique et privée :
Pour rendre le reCAPTCHA, appelez simplement la méthode getHTML()
:
getHTML();
]]>
Lorsque le formulaire est envoyé, vous devriez recevoir 2 champs
'recaptcha_challenge_field' et 'recaptcha_response_field'. Passez les alors à la méthode
verify() :
verify(
$_POST['recaptcha_challenge_field'],
$_POST['recaptcha_response_field']
);
]]>
Une fois que vous possédez le résultat, vérifiez sa validité. Il s'agit d'un objet
Zend_Service_ReCaptcha_Response qui possède une méthode
isValid().
isValid()) {
// Validation échouée
}
]]>
Encore plus simple : utilisez l'adaptateur ReCaptcha de
Zend_Captcha, ou utilisez cet adaptateur comme backend pour l'élément formulaire Captcha. Dans
ces 2 cas, le rendu et la validation du reCAPTCHA sont assurés pour vous.