2011-07-05 11 views
1

私は次のコードを持っていますが、私には壊れたリンクがあります!私はGDライブラリと適切なフォントをインストールしました!何もうまくいかないので、リンクを壊さずにイメージキャプチャをzendframeworkで使用する方法は間違っていますか?zendフレームワークのcaptchaイメージ

$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'))); 

//申し訳ありません

+5

ここでコードは??? – Balanivash

+1

@sam、あなたが言及しているコードを投稿してください。そうしないと誰もあなたを訂正することができません;) – mingos

+0

エラーログを見ましたか?また、右クリックして表示することで画像を表示することもできます。問題が何であるかについてヒントを得ることがよくあります。詳細は参考になります。 – David

答えて

0

使用してみてください:

'/public/captcha' 

の代わりに:

APPLICATION_PATH . '/../public/captcha' 

-

私は自分のアプリケーションにやったことのカップルを追加しましたメインindex.phpファイルの行数を

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

は、それからちょうど使用します:

PUBLIC_PATH . '/captcha' 
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); 
     } 
0

APPLICATION_PATH定数変数を使用してpublicフォルダに直接アクセスすることができます。 '/../public/captcha'は存在しなければならず、apache/phpには書き込みアクセス権が必要です。

関連する問題