Zend_Service-ReCaptcha.xml 3.4 KB

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