Zend_Service-ReCaptcha.xml 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 15617 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.service.recaptcha">
  5. <title>Zend_Service_ReCaptcha</title>
  6. <sect2 id="zend.service.recaptcha.introduction">
  7. <title>Einführung</title>
  8. <para>
  9. <classname>Zend_Service_ReCaptcha</classname> bietet einen Client für das <ulink
  10. url="http://recaptcha.net/">reCAPTCHA Web Service</ulink>. Laut der reCAPTCHA Seite
  11. ist "reCAPTCHA ein freies CAPTCHA Service das hilft Bücher zu digitalisieren." Jedes
  12. reCAPTCHA verlangt das der Benutzer zwei Wörter eingibt, das erste ist das aktuelle
  13. Captcha, und das zweite ist ein Wort von einem eingescannten Text bei dem Software für
  14. optische Zeichenerkennung (OCR) keine Identifizierung durchführen kann. Die Annahme ist
  15. das, wenn der Benutzer das erste Wort richtig angegeben hat, dass dann das zweite auch
  16. korrekt angegeben wird, und das dieses dann verwendet werden kann um OCR Software für
  17. die Digitalisierung von Büchern zu verbessern.
  18. </para>
  19. <para>
  20. Um den reCAPTCHA Service zu verwenden muß man
  21. <ulink url="http://recaptcha.net/whyrecaptcha.html">einen Account unterzeichnen</ulink>
  22. und eine oder mehrere Domains beim Service registrieren um öffentliche und private
  23. Schlüssel zu erzeugen.
  24. </para>
  25. </sect2>
  26. <sect2 id="zend.service.recaptcha.simplestuse">
  27. <title>Einfachste Verwendung</title>
  28. <para>
  29. Ein <classname>Zend_Service_ReCaptcha</classname> Objekt instanzieren, und ihm den
  30. öffentlichen und privaten Schlüssel übergeben:
  31. </para>
  32. <programlisting language="php"><![CDATA[
  33. $recaptcha = new Zend_Service_ReCaptcha($pubKey, $privKey);
  34. ]]></programlisting>
  35. <para>
  36. Um das reCAPTCHA darzustellen, muß einfach die <code>getHTML()</code> Methode aufgerufen
  37. werden:
  38. </para>
  39. <programlisting language="php"><![CDATA[
  40. echo $recaptcha->getHTML();
  41. ]]></programlisting>
  42. <para>
  43. Wenn das Formular übertragen wurde, sollte man zwei Felder empfangen haben,
  44. 'recaptcha_challenge_field' und 'recaptcha_response_field'. Diese sind an die
  45. <code>verify()</code> Methode des ReCaptcha Objekts zu übergeben:
  46. </para>
  47. <programlisting language="php"><![CDATA[
  48. $result = $recaptcha->verify(
  49. $_POST['recaptcha_challenge_field'],
  50. $_POST['recaptcha_response_field']
  51. );
  52. ]]></programlisting>
  53. <para>
  54. Sobald man das Ergebnis hat, kann es getestet werden um zu sehen ob es gültig ist. Das
  55. Ergebnis ist ein <classname>Zend_Service_ReCaptcha_Response</classname> Objekt, welche
  56. eine <code>isValid()</code> Methode anbietet.
  57. </para>
  58. <programlisting language="php"><![CDATA[
  59. if (!$result->isValid()) {
  60. // Fehlerhafte Prüfung
  61. }
  62. ]]></programlisting>
  63. <para>
  64. Noch einfacher zu verwenden ist
  65. <link linkend="zend.captcha.adapters.recaptcha">der ReCaptcha</link>
  66. <classname>Zend_Captcha</classname> Adapter, oder diesen Adapter als Backend für das
  67. <link linkend="zend.form.standardElements.captcha">Captcha Formularelement</link> zu
  68. verwenden. In jedem Fall werden die Details der Darstellung und Prüfung des reCAPTCHA
  69. automatisch durchgeführt.
  70. </para>
  71. </sect2>
  72. </sect1>
  73. <!--
  74. vim:se ts=4 sw=4 et:
  75. -->