Zend_Service-ReCaptcha.xml 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 17133 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.service.recaptcha">
  5. <title>Zend_Service_ReCaptcha</title>
  6. <sect2 id="zend.service.recaptcha.introduction">
  7. <title>Introduction</title>
  8. <para>
  9. <classname>Zend_Service_ReCaptcha</classname> fournit un client pour le <ulink
  10. url="http://recaptcha.net/">Service Web reCAPTCHA</ulink>. D'après le site de reCAPTCHA,
  11. "reCAPTCHA est un service gratuit de CAPTCHA qui aide à la numérisation de livres."
  12. Chaque reCAPTCHA requière que l'utilisateur saisisse 2 mots, le premier est le captcha,
  13. et le second est issu de texte scanné que les OCR (Optical Character Recognition) ne
  14. peuvent identifier.
  15. </para>
  16. <para>
  17. Pour utiliser le service reCAPTCHA, vous devez <ulink
  18. url="http://recaptcha.net/whyrecaptcha.html">créer un compte</ulink> et enregistrer un
  19. ou plusieurs domaines d'utilisation afin de générer une clé publique et une
  20. privée.
  21. </para>
  22. </sect2>
  23. <sect2 id="zend.service.recaptcha.simplestuse">
  24. <title>Utilisation la plus simple</title>
  25. <para>
  26. Instanciez un objet <classname>Zend_Service_ReCaptcha</classname> en lui passant
  27. vos clés publique et privée :
  28. </para>
  29. <programlisting language="php"><![CDATA[
  30. $recaptcha = new Zend_Service_ReCaptcha($pubKey, $privKey);
  31. ]]></programlisting>
  32. <para>
  33. Pour rendre le reCAPTCHA, appelez simplement la méthode <methodname>getHTML()</methodname>
  34. :
  35. </para>
  36. <programlisting language="php"><![CDATA[
  37. echo $recaptcha->getHTML();
  38. ]]></programlisting>
  39. <para>
  40. Lorsque le formulaire est envoyé, vous devriez recevoir 2 champs
  41. 'recaptcha_challenge_field' et 'recaptcha_response_field'. Passez les alors à la méthode
  42. <methodname>verify()</methodname> :
  43. </para>
  44. <programlisting language="php"><![CDATA[
  45. $result = $recaptcha->verify(
  46. $_POST['recaptcha_challenge_field'],
  47. $_POST['recaptcha_response_field']
  48. );
  49. ]]></programlisting>
  50. <para>
  51. Une fois que vous possédez le résultat, vérifiez sa validité. Il s'agit d'un objet
  52. <classname>Zend_Service_ReCaptcha_Response</classname> qui possède une méthode
  53. <methodname>isValid()</methodname>.
  54. </para>
  55. <programlisting language="php"><![CDATA[
  56. if (!$result->isValid()) {
  57. // Validation échouée
  58. }
  59. ]]></programlisting>
  60. <para>
  61. Encore plus simple : utilisez <link
  62. linkend="zend.captcha.adapters.recaptcha">l'adaptateur ReCaptcha</link> de
  63. <classname>Zend_Captcha</classname>, ou utilisez cet adaptateur comme backend pour <link
  64. linkend="zend.form.standardElements.captcha">l'élément formulaire Captcha</link>. Dans
  65. ces 2 cas, le rendu et la validation du reCAPTCHA sont assurés pour vous.
  66. </para>
  67. </sect2>
  68. </sect1>