Yii2框架实现登陆添加验证码功能示例
作者:弥尘 时间:2023-11-21 11:36:32
本文实例讲述了Yii2框架实现登陆添加验证码功能。分享给大家供大家参考,具体如下:
models中
LoginForm.php
public $verifyCode;
public function rules()
{
return [
……
['verifyCode', 'captcha', 'on' => 'login'], //验证码
];
}
public function scenarios() {
$scenarios = parent::scenarios();
$scenarios['login'] = ['username', 'password', 'rememberMe', 'verifyCode'];
return $scenarios;
}
controller中
public function actions()
{
return [
'error' => [
'class' => 'yii\web\ErrorAction',
],
'captcha' => [
'class' => 'yii\captcha\CaptchaAction',
'fixedVerifyCode' => YII_ENV_TEST ? 'testme' : null,
'width' => 100,
'height' => 34,
'padding' => 0,
'minLength' => 4,
'maxLength' => 4,
],
];
}
public function actionLogin()
{
if (!\Yii::$app->user->isGuest) {
return $this->goHome();
}
$model = new LoginForm(['scenario' => 'login']);
if ($model->load(Yii::$app->request->post()) && $model->login()) {
return $this->goBack();
} else {
return $this->render('login', [
'model' => $model,
]);
}
}
view中
<?php
use yii\helpers\Html;
use yii\bootstrap\ActiveForm;
use yii\captcha\Captcha;
?>
<?php $form = ActiveForm::begin(['id' => 'login-form']); ?>
<?= $form->field($model, 'verifyCode')->widget(Captcha::className(), [
'template' => '<div class="input-group input-group-lg col-md-8"><span class="input-group-addon"><i class="glyphicon glyphicon-eye-open red"></i></span>{input}<div class="input-group-addon" style="padding:5px;">{image}</div></div>',
'options' => ['class' => 'form-control','placeholder'=>"验证码"],
'imageOptions'=>['alt'=>'点击换图','title'=>'点击换图', 'style'=>'cursor:pointer']
])->label(false) ?>
<?php ActiveForm::end(); ?>
希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。
来源:http://www.cnblogs.com/baby123/p/4837289.html
标签:Yii2框架,验证码
0
投稿
猜你喜欢
sql中的常用的字符串处理函数大全
2024-01-19 21:37:41
python实现爬取图书封面
2023-06-08 16:40:44
python字符串常规操作大全
2021-04-11 17:20:36
php输出xml必须header的解决方法
2023-09-11 20:00:16
不是原型继承那么简单!prototype的深度探索
2008-03-07 12:42:00
Golang 统计字符串中数字字母数量的实现方法
2024-04-23 09:43:04
python虚拟环境virtualenv的安装与使用
2023-07-01 00:23:00
python的语句结构你真的了解吗
2022-08-11 23:05:39
python中字符串变二维数组的实例讲解
2021-08-03 04:37:56
jquery实用技巧之输入框提示语句
2024-04-22 12:49:10
JavaScript实现Ajax总结
2024-05-06 10:08:28
javascript面向对象技术基础(二)
2010-02-07 13:09:00
python 获取et和excel的版本号
2022-05-03 09:24:51
Python WXPY实现微信监控报警功能的代码
2021-05-15 02:07:20
Django Serializer HiddenField隐藏字段实例
2022-10-29 02:39:07
Javascript: 为<input>设置readOnly属性问题,希望大家以后要小心
2009-07-23 20:24:00
Python中BeautifuSoup库的用法使用详解
2023-11-19 04:52:48
经测试最好用的mysql密码忘记的解决方法
2024-01-27 17:12:57
利用python实现.dcm格式图像转为.jpg格式
2021-08-28 04:16:35
Vue.js实战之使用Vuex + axios发送请求详解
2023-07-02 17:03:48