yii2框架自带验证码类,而且可以通过widget()方法直接渲染生成填写验证码的input框,以及验证码的图片.下面就记录如何使用验证码.

控制器

假设控制器为Auth,则在该控制器下重载actions,以下是基本的配置,更多的配置请查看官方文档 yii-captcha-captchaaction 章节

public function actions()
{return ['captcha' => ['class'     => 'yii\captcha\CaptchaAction','testLimit' => 2,//两次有效'height'    => 40,'width'     => 80,'minLength' => 4,'maxLength' => 4]];
}

模型

假设验证码的字段为verifyCode,则在模型下的验证规则rules方法下,添加,注意captchaAction要配置正确,要和前端的配置对应.

public $verifyCode;
public function rules()
{return [['verifyCode','captcha','captchaAction'=>'admin/auth/captcha','message'=>'验证码不正确'],];}

视图

有两种调用方式,个人比较喜欢第二种.
方式一

<?php $form=\yii\bootstrap\ActiveForm::begin();?>
<?= $form->field($model,'verifyCode')->widget(\yii\captchat\Captcha::className,['captchaAction' =>'auth/captcha',//必须要和model中的一致'template'      => '{input}{image}', //模板'options'       => ['placeholder'=>'验证码'],//input框属性'imageOptions'  => ['id'=>'captcha']    //图像的属性
]);?>
<?php $form->end();?>

方式二

<?php $form=\yii\bootstrap\ActiveForm::begin();?>
<?= \yii\captcha\Captcha::widget(['model'         => $model,'attribute'     => 'verifyCode','captchaAction' => 'auth/captcha','options'       => ['placeholder'=>'验证码'],'imageOptions'  => ['id'=>'captcha'],'template'      => '{input}{image}',
]);?>
<?php $form->end();?>

以上是基本的配置,更多的配置请查看 官方文档 yii-captcha-captcha 章节

刷新

$("#captcha").click(function(){var url = "<?= \yii\helpers\Url::to(['auth/captcha']);?>";
$.get(url,{refresh:1},function(data){var object = eval(data);$('#captcha').attr('src',object.url);})
});

Yii框架captcha验证码的使用相关推荐

  1. php中captcha action,Yii使用Captcha验证码的方法

    本文实例讲述了Yii使用Captcha验证码的方法.分享给大家供大家参考,具体如下: 详细代码可参考:yii自带的示例代码post项目,里面有一个contact表单用到了验证码. 1. Model: ...

  2. yii框架相关知识(转)

    2019独角兽企业重金招聘Python工程师标准>>> db组件 'schemaCachingDuration'=>3600, 为什么不起做用?需要开缓存 如何在页面下边显示s ...

  3. php验证规则表单,PHP Yii框架之表单验证规则大全

    Yii是一个基于组件的高性能PHP框架,用于开发大型Web应用.Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程. 废话不多说了,直接给大家贴代码了. class ContactForm ...

  4. PHP Yii框架之表单验证规则大全

    Yii是一个基于组件的高性能PHP框架,用于开发大型Web应用.Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程,本文给大家介绍php yii框架之表单验证规则大全,感兴趣的朋友一起学习吧 ...

  5. 利用keras破解captcha验证码

    本文参考了知乎上的一篇文章,只做了少许改动,感觉挺好玩的,自己实现了一下,准确率比原作者的要高一些.如果想要了解原创文章的话,请移步知乎:使用深度学习来破解captcha验证码 本文通过keras深度 ...

  6. PHP开发框架之YII框架学习——碾压ThinkPHP不是梦

      前  言 JRedu 程序猿是一种慵懒的生物!能少敲一行代码,绝对不会多敲一个字符!所以,越来越多的开发框架应运而生,在帮助我们完成功能的同时,极大程度上也帮我们节省了人力物力,而且也提高了系统的 ...

  7. php框架里有模版引擎吗,Yii框架用模版引擎了吗?_PHP开发框架教程

    Yii框架用模版引擎了吗? Yii框架没有用模版引擎,Yii照样采纳原始PHP作为模板语法,该框架是一个基于组件的高性能PHP框架,用于开发大型Web运用,而且采纳严厉的OOP编写,并供了Web运用开 ...

  8. yii框架学习(五)get、post请求如何接收请求参数

    get请求接收参数 修改之前的actionIndex请求,在括号中添加$name参数既可以使用 public function actionIndex($name){echo 'Hello World ...

  9. Yii框架控制台报错: The id configuration for the Application is required

    一.背景 博主新接手的项目是使用Yii框架开发的,在使用yii的控制台命令的时候报错:The "id" configuration for the Application is r ...

最新文章

  1. (14)某工业生产部门根据国家计划的安排, 拟将某种高效率的5台机器,分配给所属的3个工厂A,B,C,各工厂在获得这种机器后,可以为国家盈利的情况如表4-10所示。
  2. 扩增子项目动辄几百上千样品,如何写好实验设计——样品和组命名规则
  3. jni jvm 内存泄漏_内存泄漏
  4. 将一个datetime的now转换为只有日期的_不要眨眼!中英文、大小写转换,一秒就搞定!
  5. opencv-api houshlinesp
  6. const与volatile
  7. leetcode 1154 一年中的第几天
  8. 2021年中国电热饭盒市场趋势报告、技术动态创新及2027年市场预测
  9. Java JavaFX 批量修改文件夹里面的文件的名字
  10. layer.msg回调函数
  11. 用计算机教学体育,浅谈计算机在体育教学中的应用
  12. 海康威视设备发现sdp原理
  13. 海康威视监控使用html播放
  14. MySQL定时备份并清理
  15. 联想笔记本重装系统声卡驱动未安装报错代码28,声音图标显示红叉没有声音
  16. 微信怎样知道经常聊天的人
  17. 正则表达式过滤联系方式,微信手机号QQ等
  18. ps切图后 JAVA开发_ps切图抠图详解-web前端(转)
  19. web网页设计期末课程大作业——电影介绍5页HTML+CSS制作
  20. 华为云电脑.模式_云电脑还是云手机,为何阿里、华为都要做?

热门文章

  1. C语言:有一函数y= x(x<1) 2x-1 (1≤x<10) 3x-11 (x≥10)用 scanf 函数输入 x 的值,求 y 值。
  2. 边缘检测robert原理_有源电扫相控阵天线原理(视频)
  3. Python文件.py||.pyi||.pyc||.pyo||.pyd等各种文件后缀区别
  4. WEB前端网页设计-Bootstrap 网格系统
  5. what is a hacker
  6. 岁月的剪影【五月Alive】
  7. 在测试aes加密的时候,出现一个关于密钥的长度问题
  8. Python---GUI
  9. 【工业4.0】中国企业工业4.0发展路径分析
  10. BIM模型文件下载——热交换机机房模型