首先知晓我们在使用验证码的时候通常是和我们的表单小部件配合使用
首先我们创建model层

新建一个php文件 名字叫做Verifycode.php

要在我们的model层 创建我们的验证码的验证规则,我这里简单的写两个规则 一个是 非空 另一个是验证码必须验证正确

规则写在我们的model的rules里

<?php
/**
* Created by PhpStorm.
* User: jinlei
* Date: 2017/2/13
* Time: 13:57
*/

namespace frontend\models;

use yii\base\Model;
use yii\widgets\ActiveForm;
use yii\helpers\Html;

class Verifycode extends Model
{
/*定义需要使用的标量*/

public $verifycode;

public function rules(){
return[
[‘verifycode’,’required’],
[‘verifycode’, ‘captcha’],
];
}
public function attributeLabels()
{
return array(
‘verifycode’=>’验证码’,
);
//’rememberMe’=>’Remember me next time’,
}
}
然后新建控制器层 创建一个php文件名字叫做VerifycodeController.php
<?php
/**
* Created by PhpStorm.
* User: jinlei
* Date: 2017/2/13
* Time: 14:03
*/

namespace frontend\controllers;
use yii\web\Controller;
use frontend\models\Verifycode;
class VerifycodeController extends Controller
{
public function actionIndex(){
$model = new Verifycode();
return $this->render(‘index’,[‘model’=>$model]);
}
}

接下来创建view层
新建一个php文件 名字叫做index.php
<?php
/**
* Created by PhpStorm.
* User: jinlei
* Date: 2017/2/13
* Time: 14:07
*/

use yii\captcha\Captcha;
use yii\widgets\ActiveForm;
use yii\helpers\Html;
$form = ActiveForm::begin([
‘id’ => ‘login-form’,
‘options’ => [‘class’ => ‘form-horizontal’],
‘action’=>’?r=index/login’,
‘method’=>’post’,
]) ?>
<?= $form->field($model, ‘verifycode’)->widget(Captcha::className()) ?>
<div class=”form-group”>
<div class=”col-lg-offset-1 col-lg-11″>
<?= Html::submitButton(‘Login’, [‘class’ => ‘btn btn-primary’]) ?>
</div>
</div>
<?php ActiveForm::end() ?>

最新文章

  1. 学习笔记-----Android的View绘制过程
  2. 0003 64位Oracle11gR2不能运行SQL Developer的解决方法
  3. Educational Codeforces Round 10
  4. C#中的yield return与Unity中的Coroutine(协程)(下)
  5. numpy中的broadcast
  6. 【转】java环境配置
  7. 谈谈用SQLite和FMDB而不用Core Data
  8. 两端对齐布局与text-align:justify
  9. 把Ubuntu用户目录下的目录名改成英文
  10. 栈的Java简单实现
  11. jstl 中 &lt;c:foreach&gt; 多级循环
  12. 【转】Swagger2 添加HTTP head参数
  13. oracle临时表空间 ORA-01652:无法通过16(在表空间XXX中)扩展 temp 字段
  14. (九)Delete an Index
  15. C语言网蓝桥杯1116 IP判断
  16. 第43章:MongoDB-集群--Sharding(分片)--多机的搭建
  17. Android与H5交互 原理与对比
  18. poi读取word的内容
  19. hdu 2108 Shape of HDU 判断是否为凸多边形
  20. Linux之IRQ domain

热门文章

  1. curl的head小记
  2. HTTPClient 超时链接设置
  3. EXCEL导出工具类及调用
  4. lucene源码分析(3)facet实例
  5. Ubuntu18.0.4查看显示器型号
  6. MySQL5.6.12 rpm制作及及自动化部署安装
  7. c#基础学习(0709)之vs通过抽象方法实现多态
  8. saas模式
  9. javaweb开发之get与post请求的区别
  10. thinkphp3.2 success方法注意