Yii2验证码提供图像链接&验证但图像不会出现

时间:2017-04-18 12:26:54

标签: captcha yii2-advanced-app active-form

我正在尝试使用yii2验证码,但它没有出现。验证工作绝对正常。我的代码如下所示

控制器

 public function actions()
   {
     return [
        'error' => [
            'class' => 'yii\web\ErrorAction',
        ],
        'captcha' => [
            'class' => 'yii\captcha\CaptchaAction',
            'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null,
        ],
     ];
   }

模型

 public $captcha;
 public function rules()
 {
    return [
        [['yourname', 'youremail', 'contactnumber', 'comment','captcha'], 'required'],
        [['comment'], 'string'],

        ['captcha', 'captcha'],
        [['youremail'],'email'],
        [['timestampp','cv'], 'safe'],
        [['yourname', 'youremail', 'contactnumber', 'highsteducation', 'institutename', 'passinguear', 'keyskills', 'yearofexperience', 'expectedsalary'], 'string', 'max' => 255],
        [['comment'], 'string','min' => 20 ,'max' => 200]

    ];
 }

查看

 <?= $form->field($career_model, 'captcha')->widget(\yii\captcha\Captcha::classname()) ?>

有错误

<div>
   <img id="career-captcha-image" src="/basetextile/site/captcha?v=58f5fadc92838" alt=""> <input type="text" id="career-captcha" class="form-control" name="Career[captcha]">
   <p class="help-block help-block-error">The verification code is incorrect.</p>
</div>

enter image description here

1 个答案:

答案 0 :(得分:0)

如果您的代码中的所有内容都正常,那么您的扩展程序似乎已经出现问题。

  1. 如果您没有看到验证码,请输入以查看Yii2要求 项目根目录中的命令行:
    php requirements.php

  2. 图像CAPTCHA需要具有FreeType支持的GD PHP扩展或支持PNG的ImageMagick PHP扩展。

  3. 如果未启用上述扩展程序,则需要启用它们。