0
我Yii中我的工作,我只是一個初學者,並盡我所能去學習框架,這裏是我被困在其中:Yii的驗證碼錯誤
我創建了一個用戶模型和去所需表格有了它,我想實現的驗證碼爲它:
這是在用戶模式我的驗證規則:
$public verifyCode
public function rules()
{
// NOTE: you should only define rules for those attributes that
// will receive user inputs.
return array(
array('username, password, email', 'required'),
array('username','unique'),
array('email','email'),
array('verifyCode', 'captcha', 'allowEmpty'=>!CCaptcha::checkRequirements()),
array('username, password', 'length', 'max'=>45),
array('email', 'length', 'max'=>100),
array('active', 'length', 'max'=>1),
array('created_on, updated_on', 'safe'),
// The following rule is used by search().
// Please remove those attributes that should not be searched.
array('id, username, password, email, created_on, updated_on, active', 'safe', 'on'=>'search'),
);
}
這是我被覆蓋的動作()在我的UserController中:
public function actions(){
return array(
'captcha'=>array(
'class' => 'CCaptchaAction',
)
);
}
這是我的看法文件:
<?php if(CCaptcha::checkRequirements()): ?>
<div class="row">
<?php echo $form->labelEx($model,'verifyCode'); ?>
<div>
<?php $this->widget('CCaptcha'); ?>
<?php echo $form->textField($model,'verifyCode'); ?>
</div>
<div class="hint">Please enter the letters as they are shown in the image above.
<br/>Letters are not case-sensitive.</div>
<?php echo $form->error($model,'verifyCode'); ?>
</div>
<?php endif; ?>
據我,我認爲我正確但是所做的一切,是沒有得到生成的驗證碼圖像。哦,是的GD庫已安裝,如果我導航到網站/聯繫人,那麼驗證碼生成罰款。
我似乎不明白,我在哪裏弄錯了。
這是我看到的東西:
的形式似乎不過是工作的罰款,我不能看到的驗證碼圖像。
任何幫助,將不勝感激。
問候,
有可能是訪問權限到'CCaptchaAction'問題。你看過[這個解決方案](http://stackoverflow.com/a/11971926/506695)? – Ezze
同時檢查你是否在php中有'gd'庫。嘗試直接獲取圖像,並查看是否有任何錯誤,將圖像下載到您的電腦並檢查它的內容,也可能有一些提示。 – 2013-05-19 11:46:16
gd是好的,因爲'CCapcha :: checkRequirements()'返回true – rzelek