您的位置:首页 > 编程语言 > PHP开发

Yii2 验证码

2016-06-07 16:21 483 查看
注册时候增加验证码, 首先 在 SignupForm.php 增加:

/**
* @验证码独立操作  下面这个actions注意一点,验证码调试出来的样式也许你并不满意,这里就可
以需修改,这些个参数对应的类是@app\vendor\yiisoft\yii2\captcha\CaptchaAction.php,可以参照这个
类里的参数去修改,也可以直接修改这个类的默认参数,这样这里就不需要改了
*/
public function actions()
{
return  [
//                 'captcha' =>
//                    [
//                        'class' => 'yii\captcha\CaptchaAction',
//                        'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null,
//                    ],  //默认的写法
'captcha' => [
'class' => 'yii\captcha\CaptchaAction',
'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null,
'backColor'=>0x000000,//背景颜色
'maxLength' => 6, //最大显示个数
'minLength' => 5,//最少显示个数
'padding' => 5,//间距
'height'=>40,//高度
'width' => 130,  //宽度
'foreColor'=>0xffffff,     //字体颜色
'offset'=>4,        //设置字符偏移量 有效果
//'controller'=>'login',        //拥有这个动作的controller
],
];
}


View Code

在signup.php

<?= $form->field($model, 'verifyCode')->widget(\yii\captcha\Captcha::className(),[

]) ?>

<?php
$form = ActiveForm::begin([
'id' => 'login-form',
]);
?>
<?php
echo Captcha::widget(['name'=>'captchaimg','captchaAction'=>'login/captcha','imageOptions'=>['id'=>'captchaimg', 'title'=>'换一个', 'alt'=>'换一个', 'style'=>'cursor:pointer;margin-left:25px;'],'template'=>'{image}']);//我这里写的跟官方的不一样,因为我这里加了一个参数(login/captcha),这个参数指向你当前控制器名,如果不加这句,就会找到默认的site控制器上去,验证码会一直出不来,在style里是可以写css代码的,可以调试样式 ?>
<?php
ActiveForm::end();
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: