我正在尝试使用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>
答案 0 :(得分:0)
如果您的代码中的所有内容都正常,那么您的扩展程序似乎已经出现问题。
如果您没有看到验证码,请输入以查看Yii2要求
项目根目录中的命令行:
php requirements.php
图像CAPTCHA需要具有FreeType支持的GD PHP扩展或支持PNG的ImageMagick PHP扩展。
如果未启用上述扩展程序,则需要启用它们。