1 <sect1 id="zend.service.recaptcha">
2 <title>Zend_Service_ReCaptcha</title>
4 <sect2 id="zend.service.recaptcha.introduction">
5 <title>Wprowadzenie</title>
8 Komponent <code>Zend_Service_ReCaptcha</code> zapewnia klienta dla
9 usługi <ulink url="http://recaptcha.net/">reCAPTCHA Web Service</ulink>.
10 Cytując serwis internetowy reCAPTCHA, "reCAPTCHA jest darmowym
11 serwisem CAPTCHA który pomaga skanować książki."
12 Każdy element reCAPTCHA wymaga, aby użytkownik wpisał dwa słowa:
13 pierwsze które jest tradycyjnym captcha, oraz drugie które jest
14 słowem zeskanowanym z jakiegoś tekstu, którego oprogramowanie do
15 optycznego rozpoznawania tekstu (OCR) nie mogło zidentyfikować.
16 Założeniem jest, że jeśli użytkownik poprawnie wpisze pierwsze słowo,
17 to także i drugie wpisze poprawnie, co będzie mogło być wykorzystane
18 to ulepszenia oprogramowania OCR używanego do skanowania książek.
22 Aby używać serwisu reCAPTCHA, będziesz potrzebował <ulink
23 url="http://recaptcha.net/whyrecaptcha.html">założyć
24 konto</ulink> i zarejestrować w serwisie jedną lub więcej domen
25 w celu wygenerowania publicznego oraz prywatnego klucza.
29 <sect2 id="zend.service.recaptcha.simplestuse">
30 <title>Najprostsze użycie</title>
33 Utwórz obiekt klasy <code>Zend_Service_ReCaptcha</code>, przekazując
34 mu twoje klucze: publiczny oraz prywatny:
37 <programlisting role="php"><![CDATA[
38 $recaptcha = new Zend_Service_ReCaptcha($pubKey, $privKey);
43 Aby wyświetlić element reCAPTCHA, po prostu wywołaj metodę
44 <code>getHTML()</code>:
47 <programlisting role="php"><![CDATA[
48 echo $recaptcha->getHTML();
53 Gdy formularz zostanie wysłany, powinieneś otrzymać dwa pola,
54 'recaptcha_challenge_field' oraz 'recaptcha_response_field'.
55 Przekaż je do metody <code>verify()</code> obiektu ReCaptcha:
58 <programlisting role="php"><![CDATA[
59 $result = $recaptcha->verify(
60 $_POST['recaptcha_challenge_field'],
61 $_POST['recaptcha_response_field']
67 Gdy posiadasz wynik, sprawdź czy jest pozytywny. Wynik działania
68 metody jest obiektem klasy <code>Zend_Service_ReCaptcha_Response</code>
69 i zapewnia on metodę <code>isValid()</code>.
72 <programlisting role="php"><![CDATA[
73 if (!$result->isValid()) {
80 Jeszcze prostszy w użyciu jest <link
81 linkend="zend.captcha.adapters.recaptcha">sterownik ReCaptcha</link>
82 dla klasy <code>Zend_Captcha</code> lub użycie tego sterownika w
83 <link linkend="zend.form.standardElements.captcha">elemencie
84 formularza Captcha</link>. W każdym z tych przypadków
85 wyświetlanie oraz weryfikacja elementu reCAPTCHA jest zautomatyzowana.