Ben sayfa gönderilen ve CAPTCHA en isValid()
yöntemi denir edilirken Zend_Captcha
hep yanlış dönen ile bir sorunu var. Bu kadarıyla ilgili olduğum gibi çalışması gerektiğini, çünkü bu benim deli ediyor.
I kontrolörün hareket fonksiyonunun en üstünde bu ilan başlamak
$captcha = new Zend_Captcha_Image('captcha',
array(
'captcha' => array(
'name' => 'graduatesignupcaptcha',
'wordlen' => 6,
'font' => $this->config->captcha->font,
'imgDir' => $baseUrl.'/images/captcha/',
'imgUrl' => $this->config->webserver->name.'/images/captcha/',
)
)
);
$captcha->setHeight(80)
->setTimeout(300);
Ben her zamanki form doğrulama yapmak ve değer her zaman false döndürür CAPTCHA için forma girdiğini doğrulamak için geldiğinde tüm eserler, ancak öyle olduğunu.
//next we check the captcha text to ensure that the form is a person not a script
$captchaText = $form->getElement('captchainput')->getValue();
$captchaId = $form->getElement('captchaid')->getValue();
//$captchaSession = new Zend_Session_Namespace('Zend_Form_Captcha_'.$captchaId);
$captchaArray = array(
'id' => $captchaId,
'input' => $captchaText
);
if(!$captcha->isValid($captchaArray)){
$log->log(implode(",",$captcha->getErrors()), Zend_Log::DEBUG);
$form->getElement('captchainput')->setErrors(array('messages' => 'Bad security code'));
$formFailed = true;
}
Ben alıyorum ve benim formunda gizli bir unsur olarak saklamak ediyorum kimliği ne olursa olsun ben bu hep başarısız ne üretilir, ancak ediliyor resmi maç emin olmak için kontrol ettik.
Burada basit bir şey eksik muyum? Ya da bu ile ilgili daha iyi bir yolu var mı?
Teşekkürler,