[moka同学笔记]Yii2.0验证码
1.Model中Code.php
<?php
/**
* Created by PhpStorm.
* User: moka同学
* Date: 2016/07/25
* Time: 10:48
*/
namespace app\models; use yii\base\Model; class Code extends Model{
public $verifyCode; public function rules()
{
return [
['verifyCode','captcha','captchaAction'=>'code/captcha','message'=>'验证码错误!']
];
}
}
?>
2.控制器中CodeController.php
<?php
/**
* Created by PhpStorm.
* User: moka同学
* Date: 2016/07/25
* Time: 10:46
*/
namespace app\controllers; use app\models\Code;
use yii\web\Controller; class CodeController extends Controller{
public function actions()
{
return [
//验证码
'captcha'=>[
//验证码类
'class'=>'yii\captcha\CaptchaAction',
'maxLength'=>6, //生成验证码的长度最大为4
'minLength'=>4, //生成最小个数4
'width' =>80, //宽度
'height'=>40
]
];
} public function actionIndex(){
$code = new Code();
if(\Yii::$app->request->isPost){
//验证码验证
if($code->validate()){
echo "验证通过";
}else{
var_dump($code->getErrors());
}
} return $this->render('index',['model'=>$code]); }
}
?>
3.视图index.php
<?php
use \yii\helpers\Html;
use \yii\captcha\Captcha;
echo $this->render('@app/views/public/testNav');
?>
<?=Html::beginForm("",'post',['class'=>'forms'])?>
<?=Captcha::widget([
'model'=>$model, //Model
'attribute'=>'verifyCode',//字段
'captchaAction'=>'code/captcha',//验证码的action 与 Model 是对应的,code/captcha
'template'=>'{input}{image}', //模版,可以自定义
'options'=>[
//input 的Html属性配置
'class'=>'input verifycode',
'id'=>'verifyCode'
],
'imageOptions'=>[
//image的Html属性
'class'=>'imagecode',
'alt'=>'点击图片刷新'
]
]);?>
<?=Html::submitButton("提交",['class'=>'submit'])?>
<?=Html::endForm();?>
[moka同学笔记]Yii2.0验证码的更多相关文章
- [moka同学笔记]yii2.0查询数据库
一. [:id占位符]使用 $results = Test::findBySql($sql,array(':id'=>'1 or 1=1))->all() 二. [id=1] 选 ...
- [moka同学笔记]Yii2.0 modal的使用
第一次使用,时候不明白什么原理,大概用了几次后,才模模糊糊搞清楚原来是怎么一回事,现在就把写过的代码,贴在下边. 1.在视图文件中, 第一步首先在index.php文件中 做了一个a链接的按钮 调用了 ...
- [moka同学笔记]yii2.0缓存
1.控制器中CacheDemoController.php <?php /** * Created by PhpStorm. * User: moka同学 * Date: 2016/06/29 ...
- [moka同学笔记]yii2.0数据库操作以及分页
1.model中models/article.php 1 <?php 2 3 namespace app\models; 4 5 use Yii; 6 7 /** 8 * This is the ...
- [moka同学笔记]yii2.0表单的使用
1.创建model /biaodan.php <?php /** * Created by PhpStorm. * User: moka同学 * Date: 2016/08/05 * Tim ...
- [moka同学笔记]yii2.0小物件的简单使用(第二种方法)
1.在widgets/TestWidget.php中 <?php /** * Created by PhpStorm. * User: moka同学 * Date: 2016/08/05 * T ...
- [moka同学笔记]yii2.0小物件的简单使用(第一种方法)
这是第一种方法,还有另一种方法,其实都差不多. 1.在创建widgets\HelloWiget.php <?php /** * Created by PhpStorm. * User: Admi ...
- [moka同学笔记]Yii2.0显示页匿名函数设置$value
匿名函数设置$value <?= GridView::widget([ 'dataProvider' => $dataProvider, 'columns' => [ // ['cl ...
- [moka同学笔记]Yii2.0给一张表中增加一个属性
1.model中建立关联 public function getUser(){ return$this->hasOne(User::className(),['id'=>'uid']) ; ...
随机推荐
- C# Use Pop3Client to read gmail
host = "pop.gmail.com" user = "xxxxx@gmail.com" password = "xxxx" port ...
- Foundation和UIKit框架组织图
转自:http://fantom.iteye.com/blog/1776558
- 调整win7 Windows7下时间同步的频率时 钟同步间隔
今天发现时间不对,同步时间后看到Windows系统默认是一周才同步一次时间,频率太低了.查找了一下资料,找到了两种调整Win7时间同步频率的方法. 方法一:注册表法 这种方法是通过修改注册表中的键值来 ...
- Qt编写自定义控件插件路过的坑及注意事项
在一日一控件的口号下,终于写好了五十几个自定义控件,包括各种仪表盘,各种温度计,各种进度条,各种按钮等,具体可参见(http://www.cnblogs.com/feiyangqingyun/p/61 ...
- Offer_answer_with_SDP_rfc3264
Network Working Group J. RosenbergRequest for Comments: 3264 dynamicsoftObsoletes: 2543 H. Schulzrin ...
- perl备忘
List Operators: sort reverse grep map my @castways = sort qw( first second third); # qw 给单词自动加上双引号 g ...
- eclipse项目导入androidstudio
1.添加build.gradle buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tool ...
- 打包并压缩seajs代码
背景 seajs是一款优秀的模块开发插件,但是当我们使用它来进行模块化开发的时候,由于它的每个模块的加载都会进行一次http请求,那么当模块数量倍增的时候,会拖慢页面的加载速度. 通常我们为了能加快页 ...
- Using HiveServer2 - Authentication
To configure Hive for use with HiveServer2, include the following configuration properties in the .. ...
- MyBatis知多少(7)持久层
持久层是适合使用MyBatis的地方.在面向对象的系统中,持久层主要关注对象(或者更精确地说应该是存储在那些对象中的数据)的存取.在企业应用程序中持久层通常用关系数据库系统来存储数据,虽然某些情况下其 ...