PHP建站技术分享-从入门到精通_各类知识收集PHP建站技术分享-从入门到精通_各类知识收集PHP建站技术分享-从入门到精通_各类知识收集

QQ:420220301 微信/手机:150-3210-7690
当前位置:首页 > CMS教程 > Fastadmin

如何给前台登录添加上验证码功能?

管理员 2024-12-14
Fastadmin
88

如何给前台登录添加上验证码功能?

FastAdmin默认的前台登录是没有验证码功能的,很多时候我们为了避免穷举登录,我们需要给前台登录添加上验证码功能。

首先我们需要打开application/index/view/user/login.html这个视图文件,找到第20行左右,我们在密码框后面添加以下代码

//如果你启用了全新文字点击验证码,建议class添加上hidden<div class="form-group">    <label class="control-label">{:__('Captcha')}</label>    <div class="controls">        <div class="input-group input-group-lg">            <input type="text" name="captcha" class="form-control" placeholder="{:__('Captcha')}" data-rule="required;length(4)" style="border-radius: 0;" />            <span class="input-group-addon" style="padding:0;border:none;">                <img src="{:captcha_src()}" width="140" height="42" onclick="this.src = '{:captcha_src()}?r=' + Math.random();"/>            </span>        </div>        <p class="help-block"></p>    </div></div>

然后我们再打开application/index/controller/User.php这个控制器文件,找到第141行login这个登录的控制器方法。注意下其中代码段中的$rule$msg$data这三个变量,我们都需要简单的修改一下,添加验证码的验证,代码如下:

$captcha = $this->request->post('captcha');$rule = [    'account'   => 'require|length:3,50',    'password'  => 'require|length:6,30',    'captcha'   => 'require|captcha',    '__token__' => 'require|token',];$msg = [    'account.require'  => 'Account can not be empty',    'account.length'   => 'Account must be 3 to 50 characters',    'password.require' => 'Password can not be empty',    'password.length'  => 'Password must be 6 to 30 characters',    'captcha.require'  => 'Captcha can not be empty',    'captcha.captcha'  => 'Captcha is incorrect',];$data = [    'account'   => $account,    'password'  => $password,    'captcha'   => $captcha,    '__token__' => $token,];

这样即可以为我们的前台登录添加上验证码功能了。

温馨提醒

1、如果你在后台启用了全新极验证码插件或全新文字点击验证码插件,前台登录的验证码也会做相应的替换。
2、如果你启用的是全新文字点击验证码插件,可能前台验证码会闪烁一下,此时的解决办法是给验证码的父元素上添加上hidden这个class即可



希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, LeCMS, ClassCMS, Fastadmin, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。

相关推荐

扫码关注

qrcode

回顶部