1 <sect1 id="zend.service.recaptcha">
2 <title>Zend_Service_ReCaptcha</title>
4 <sect2 id="zend.service.recaptcha.introduction">
8 <code>Zend_Service_ReCaptcha</code> מספק תמיכה בשירות ה <ulink url="http://recaptcha.net/">reCAPTCHA</ulink>.
9 כפי שמוסבר באתר reCAPTCHA, "reCAPTCHA הינו שירות ווב חינמי אשר מציג מילים מתוך ספרות למניעת ספאם ושימוש של האתר והתוכן בצורה לא חוקית ולמטרת ספאם.".
10 כל reCAPTCHA דורש מהמשתמש להזין שתי מילים, המילה הראשונה היא בעצם ה captcha עצמה, והשנייה היא טקסט כלשהו שנסרק אשר מונע מתוכנת OCR לנסות ולפענח אותו.
11 ההשערה היא שבמידה והמילה הראשונה הוזנה כפי שצריך רוב הסיכויים שגם השנייה תיהיה נכונה.
15 כדי להשתמש בשירות של reCAPTCHA, תצטרך <ulink url="http://recaptcha.net/whyrecaptcha.html">להרשם</ulink> לשירות ולהוסיף דומיין אחד או יותר כדי לקבל מפתחות זיהוי.
19 <sect2 id="zend.service.recaptcha.simplestuse">
20 <title>שימוש בסיסי</title>
23 יצירת אובייקט <code>Zend_Service_ReCaptcha</code> חדש עם העברת המפתחות שלכם בתור פרמטרים:
26 <programlisting role="php"><![CDATA[
27 $recaptcha = new Zend_Service_ReCaptcha($pubKey, $privKey);
32 כדי להציג את הטקסט יש להשתמש במתודה <code>getHTML()</code>:
35 <programlisting role="php"><![CDATA[
36 echo $recaptcha->getHTML();
41 כשהטופס נשלח, אתם תקבלו שני שדות, 'recaptcha_challenge_field' ו 'recaptcha_response_field'.
42 העבירו את שני השדות למתודה <code>verify()</code>:
45 <programlisting role="php"><![CDATA[
46 $result = $recaptcha->verify(
47 $_POST['recaptcha_challenge_field'],
48 $_POST['recaptcha_response_field']
54 ברגע שיש לכם את התוצאה מהמתודה, בדקו זאת אם היא תקינה.
55 התוצאה הינה אובייקט של <code>Zend_Service_ReCaptcha_Response</code>, אשר מספק מתודה <code>isValid()</code>.
58 <programlisting role="php"><![CDATA[
59 if (!$result->isValid()) {
66 יותר פשוט יהיה להשתמש במתאם <link linkend="zend.captcha.adapters.recaptcha">ReCaptcha</link> <code>Zend_Captcha</code>, או להשתמש במתאם בתור בסיס ל
67 <link linkend="zend.form.standardElements.captcha">אלמנט טפסים</link>. במקרה הזה, הפרטים של התצוגה והאימות מול reCAPTCHA נעשים אוטומטית.