Yii2框架实现登陆添加验证码功能示例
程序员文章站
2022-05-02 23:06:10
本文实例讲述了yii2框架实现登陆添加验证码功能。分享给大家供大家参考,具体如下:
models中
loginform.php
public $verifyc...
本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于yii框架的php程序设计有所帮助。