Zend_Captcha
Zend_Captcha přináší do Zend Frameworku podporu pro ověřovací obrázky na rozpoznání, zda stránku opravdu navštívil člověk. V distibuci ZF bude obsaženo několik typů captcha ověřování – Figlet, Image a ReCaptcha. Figlet generuje ASCII art, Image je nejčastěji používaný obrázek s textem a reCaptcha.
Zend_Captcha_Figlet
Zend_Captcha_Figlet používá Zend_Figlet_Text pro převod textu do ASCII. Tímto vygenerujeme 5ti-znakovou Figlet Captchu:
$captcha = new Zend_Captcha_Figlet(array(
'name' => 'foo',
'wordLen' => 5,
));
$id = $captcha->generate();
(pozn. Zde jsem narazil na bug, pokud nastavíme
wordLen na 12 a více, tak vypadne warning)
Potom captchu už jen vyrenderujeme: (pozn. paremetr $this->view
není v manuálu uveden a bez něj to nefunguje BUG )
$this->view->captcha = $captcha->render($this->view);
A případně si pro testovací účely můžeme vypsat i text, který je zobrazen:
$this->view->captchaText = $captcha->getWord();
Captcha vypadá asi takhle:

Zend_Form_Element_Captcha
Zend_Form_Element_Captcha je nový element použitelný ve spojení se Zend_Form. Můžeme snadno implementovat captchu do našich formulářů.
$form = new Zend_Form();
$element = new Zend_Form_Element_Captcha('foo', array(
'label' => "Please verify you're a human",
'captcha' => array(
'captcha' => 'Figlet',
'wordLen' => 6,
'timeout' => 1,
),
));
$form->addElement($element);
Poté ji můžeme validovat jako součást formuláře přes isValid($data).
Pingback: Zend Framework CZ » Archiv » Zend Framework 1.6 je tady!
ahoj, vies mi ukazat kus kodu ako spravit obrazkovu captchu? dost by mi to pomohlo… inak fan clanocek…