如何在zend框架中创建captcha

How to create captcha in zend framework?

本文关键字:创建 captcha 框架 zend      更新时间:2023-09-26

如何在Zend Framework上运行的应用程序中创建CAPTCHA响应/质询?有内置的图书馆吗?

从Zend Framework签出直接链接-http://framework.zend.com/manual/en/zend.captcha.introduction.html

生成:

//generates an instance of Zend_Captcha
//returns ID of captcha session
function generateCaptcha() {
    $captcha = new Zend_Captcha_Image();
    $captcha->setTimeout(’300′)
    ->setWordLen(’6′)
    ->setHeight(’80′)
    ->setFont(‘/path/to/your/fontFile.ttf’)
    ->setImgDir(‘/path/to/your/image/captchaDirectory’);
    $captcha->generate();    //command to generate session + create image
    return $captcha->getId();   //returns the ID given to session & image
}   //end function generateCaptcha

验证:

//validates captcha response
function validateCaptcha($captcha) {
    $captchaId = $captcha[‘id’];
    $captchaInput = $captcha[‘input’];
    $captchaSession = new Zend_Session_Namespace(‘Zend_Form_Captcha_’ . $captchaId);
    $captchaIterator = $captchaSession->getIterator();
    $captchaWord = $captchaIterator[‘word’];
    if( $catchaWord ) {
        if( $captchaInput != $captchaWord ){
            return false;
        } else {
            return true;
        }
    } else {
        return false;
    }
}

示例:

http://mnshankar.wordpress.com/2009/08/13/understanding-zend-captcha-zend_captcha_image/

http://krmaurya.com/13/hello-world/

可以从以下stackoverflow.com问题中得出可能的答案:

  • 如何创建简单的javascript/jquery客户端captcha
  • 如何使用JavaScript重新加载ReCaptcha