zend框架中的验证码图像

时间:2011-07-05 07:37:34

标签: php zend-framework gd captcha

我有以下代码,但我得到的是断链接!我已经安装了GD库和正确的字体!但没有什么工作,所以如何在zendframework中使用图像验证码而不会断开链接,出错了什么?

$captcha = new Zend_Form_Element_Captcha('Captcha',array(
        'captcha' => array('captcha' => 'Image', 'wordLen' => 6, 
        'timeout' => 300, 'width' => 300, 'height' => 100, 
        'imgUrl' => '/captcha',
        'imgDir' => APPLICATION_PATH . '/../public/captcha', 
        'font' => APPLICATION_PATH . '/../public/fonts/LiberationSansRegular.ttf')));

//抱歉

3 个答案:

答案 0 :(得分:0)

尝试使用:

'/public/captcha'

而不是:

APPLICATION_PATH . '/../public/captcha'

-

我在我的应用程序中做的是在主index.php文件中添加几行,以便使用常量变量直接访问public文件夹:

// Define path to public directory
defined('PUBLIC_PATH')
    || define('PUBLIC_PATH', realpath(dirname(__FILE__) . '/../public'));

然后使用:

PUBLIC_PATH . '/captcha'

答案 1 :(得分:0)

我发现了问题..它来自:)

        if ( in_array( strtolower( ini_get( 'magic_quotes_gpc' ) ), array( '1', 'on' ) ) ) {
        $_POST = array_map( 'stripslashes', $_POST );
        $_GET = array_map( 'stripslashes', $_GET );
        $_COOKIE = array_map( 'stripslashes', $_COOKIE );
        }

答案 2 :(得分:0)

APPLICATION_PATH。 '/../public/captcha'必须存在且apache / php必须具有写访问权限。