2012-01-04 11 views
0

Userモデルでは動作しません:キャプチャはYiiの

public function rules() 
{ 
    return array(
     ... 
     array('verifyCode', 'captcha', 'on'=>'register'), 
     ... 
    ); 
} 

UserControllerで

public function actionRegister() 
{ 
    $model=new User; 
    if(isset($_POST['User'])) 
    { 
     $model->attributes=$_POST['User']; 
     if($model->save()){ 
      $this->redirect(array('login')); 
     } 
    } 
    ... 
    $this->render('register'); 
} 

ビュー - register.php

<?php $this->widget('CCaptcha'); ?> 
      <div class="captcha"><?php echo CHtml::activeTextField($model,'verifyCode', array('class'=>'captcha')); ?></div> 
    <?php echo $form->error($model,'verifyCode'); ?> 

これは大丈夫キャプチャをレンダリングするが、検証は発生しません。 。何が問題なの?

+0

おそらくspフレームワークをecify。 –

+1

投稿のタイトルで既に述べたYii Frameworkを使用しています –

答えて

3
+0

私は簡潔さのためにコード全体を貼り付けていませんでした。もちろん、後で 'render'関数呼び出しがありました。さもなければ、captchaは最初にレンダリングされません。それに応じてコードを更新しました –

+0

$ model-> save()の代わりに$ model-> validate()を使用するとどうなりますか? – user677900

+0

私は間違ったキャプチャを提供しても常に真を返します –