2012-07-24 103 views
0
$captcha = new Zend_Captcha_Image(array(
    'font' => BASE_PATH .'/fonts/Average-Regular.ttf' 
)); 
$captchaId = $captcha->generate(); 

的index.php中Zend_Captcha_Image套牢字體包括路徑

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

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

錯誤:

Warning: imagepng(): Unable to open './images/captcha/564749fc943b090f6d38233071ae1538.png' for writing: No such file or directory in /var/www/html/workbench/zend/library/Zend/Captcha/Image.php on line 563

+0

什麼是您存儲字體的目錄路徑? – 2012-07-24 04:32:46

+0

它駐留在根文件夾'/fonts/Average-Regular.ttf' – 2012-07-24 04:41:30

+0

你有另一個常量名稱'APPLICATION_PATH'定義,或者你正在使用'BASE_PATH'而不是'APPLICATION_PATH'? – 2012-07-24 04:46:16

回答

0

對於您的字體, ''將指向保存你的模塊目錄的你的Zend目錄。例如,如果你創建一個像這樣的ZendSkeletonApplication-master/data/fonts這樣的新目錄,並把你的字體文件像ZendSkeletonApplication-master/data/fonts/aril.ttf,那麼你可以啓動您的驗證碼如下所示:

$captcha = new Zend_Captcha_Image(array(
    'font' => './data/fonts/arial.ttf', 
    'imgDir'=> 'your nominated directory', 
    'imgUrl'=> 'same like above from url', 
)); 
$captchaId = $captcha->generate(); 

但是你可以定義你的索引頁恆定指向您選擇的目錄,並使用它。