Yii2实用基础学习笔记(七):验证码 [ 2.0 版本 ]
新建CodeController.php控制器。
<?php
namespace app\controllers;
use yii\web\Controller;
class CodeController extends Controller{
public function actionVerifyCode(){
}
}
新建Code.php模型。
<?php
namespace app\models;
use yii\base\Model;
class Code extends Model{
public $code;
public function rules(){
return [
['code','captcha','captchaAction' => 'code/captcha','message' => '验证码错误!']
];
}
}
新建视图@views/code/verifycode.php
<?php
use \yii\helpers\Html;
?>
修改Code控制器actionVerifyCode操作和新增actions方法
<?php
namespace app\controllers;
use yii\web\Controller;
class CodeController extends Controller{
public function actions(){
return [
'captcha' => [
'class' => 'yii\captcha\CaptchaAction',
'maxLength' => 4,
'minLength' => 4,
'width' => 80,
'height' => 40
]
];
}
public function actionVerifyCode(){
$model = new \app\models\Code();
if(\Yii::$app->request->isPost && $model->load(\Yii::$app->request->post())){
if($model->validate()){
echo '验证成功!';
}else{
var_dump($model->getErrors());
}
}
return $this->render('verifycode',['model'=>$model]);
}
}
修改视图代码,加载模型数据和验证码
<?php
use \yii\helpers\Html;
?>
<?=Html::beginForm('','post')?>
<?=\yii\captcha\Captcha::widget([
'model' => $model,
'attribute' => 'code', //表单字段
'captchaAction' => 'code/captcha', //与模型关联的验证码操作,由actions()定义
'template' => '{input}{image}', //模板,可以自定义
'options' => [ //input属性数组
'class' => 'form-control',
'id' => 'verify'
],
'imageOptions' => [ //image属性数组
'class' => 'imageCode',
'alt' => '点击图片刷新'
]
]);
?>
<?=Html::submitButton('验证',['class' => 'btn btn-primary'])?>
<?=Html::endForm()?>
菜鸟CK 北京
注册时间:2015-08-20
最后登录:2020-02-24
在线时长:24小时15分
最后登录:2020-02-24
在线时长:24小时15分
- 粉丝103
- 金钱1110
- 威望110
- 积分2450
共 4 条评论
楼主好厉害,学习了
额,我这个新手的学习笔记了!
我连门都咩有入呢
学习态度很好
楼主好棒~~~看着你的代码打了一遍
希望能够帮到你!
很棒 照着你的做了一遍 我就是弄不出登录提示出来