0

私は 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 でオーバーライドされた action() です:

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 ライブラリがインストールされています。サイト/連絡先に移動すると、キャプチャが正常に生成されます。

私は理解していないようです、どこで間違っていますか。

これは私が見るものです:

ここに画像の説明を入力

フォームは正常に機能しているようですが、キャプチャ画像が表示されません。

どんな助けでも大歓迎です。

よろしく、

4

1 に答える 1