当前位置: 首页 > 编程笔记 >

Yii2 如何在modules中添加验证码的方法

太叔烨霖
2023-03-14
本文向大家介绍Yii2 如何在modules中添加验证码的方法,包括了Yii2 如何在modules中添加验证码的方法的使用技巧和注意事项,需要的朋友参考一下

最近玩了下Yii2的验证码部分,正常的逻辑都可以走通的,网上的例子也是没有问题的,关键有问题的部分是在module中使用的时候,分享给大家,往下看之前可以去看看正常情况下是如何使用的。

controller部分的代码,这里的跟网上的都类似

public function actions()
{
  return [
    'captcha' => [
      'class' => 'yii\captcha\CaptchaAction',
      'fixedVerifyCode' => null,
      'backColor' => 0x000000, //背景颜色
      'maxLength' => 6, //最大显示个数
      'minLength' => 5, //最少显示个数
      'padding' => 5, //间距
      'height' => 40, //高度
      'width' => 130, //宽度
      'foreColor' => 0xffffff, //字体颜色
      'offset' => 4, //设置字符偏移量 有效果
    ],
  ];
}

model 部分的代码【这里是需要注意的】

public function rules()
{
  return [
    ['username', 'required', 'message' => '登录账号不能为空'],
    ['password', 'required', 'message' => '登录密码不能为空'],
    ['verifyCode', 'required', 'message' => '验证码不能为空'],
    ['verifyCode', 'captcha', 'captchaAction' => 'admin/default/captcha', 'message' => '验证码输入错误'],
    ['rememberMe', 'boolean'],
    ['password', 'validatePassword'],
  ];
}

rules中的verifyCode,需要加一个captchaAction对应的值,不然会出现验证码验证不通过,而且验证码的的数字也不会变化,原因应该是默认使用了site/captcha导致的

view部分的代码【由于php跟html的混排导致我无法忍受页面样式的混乱排版,所以尽量将参数配置部分拿出来】

$captchaConfig = [
  'name' => 'captchaimg',
  'captchaAction' => ['/admin/default/captcha'],
  'template' => '<div class="form-group"><div>{image}</div></div>',
  'imageOptions' => [
    'id' => 'captchaimg',
    'title' => '换一个',
    'alt' => '换一个',
    'style' => 'cursor:pointer;margin-left:25px;',
  ],
];
<?=Captcha::widget($captchaConfig);?>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍yii2中添加验证码的实现方法,包括了yii2中添加验证码的实现方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了yii2中添加验证码的实现方法。分享给大家供大家参考,具体如下: 首先,在模型中添加验证码字段: 其次,可以在函数attributeLabels中添加前台页面中验证码的字段名称: 然后,在视图文件中做如下修改: 希望本文所述对大家基于Yii框架的PHP程序设计有

  • (1). 配置路由 配置路由 myobject/myadmin/urls.py 加入如下代码 .... # 后台管理员路由 url(r'^login$', index.login, name="myadmin_login"), url(r'^dologin$', index.dologin, name="myadmin_dologin"), url(r'^log

  • 本文向大家介绍Yii2增加验证码步骤详解,包括了Yii2增加验证码步骤详解的使用技巧和注意事项,需要的朋友参考一下 本来以为yii2框架验证码这块很全面,尝试百度google了一下,大多数教程写的零零散散不全面,想着自己写一份带有完整步骤的验证码教程。 我们假设site/login 表单登录需要增加验证码。 1、siteController控制器的actions方法增加captcha设置 上面我们

  • 本文向大家介绍YII2框架中验证码的简单使用方法示例,包括了YII2框架中验证码的简单使用方法示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了YII2框架中验证码的简单使用方法。分享给大家供大家参考,具体如下: 验证码的使用是比较频繁的。YII2中已经帮我们做好了封装。 首先我们在控制器里创建一个actions方法,用于使用yii\captcha\CaptchaAction 显示页面代

  • def validate_mobile_number(value):如果不是str(value).isdigit():引发ValidationError(“请输入有效的手机号码”)类ModelA(AbstractUser): mobile=models.CharField(u(“mobile”),unique=True,max_length=10,验证器[validate_mobile_numbe

  • 问题内容: 我正在尝试编写一个向指令添加验证属性的角度指令,但是它似乎没有用。这是我的演示。您将注意到,如果删除第二个输入框中的文本,则“有效”保持为true,但是如果删除第一个输入框中的文本,则为false。 http://plnkr.co/edit/Rr81dGOd2Zvio1cLYW8D?p=preview 这是我的指令: 我猜我只是缺少一些简单的东西。 问题答案: 在表单的编译阶段将读取所