zoukankan      html  css  js  c++  java
  • Laravel

    • 本人感觉用的比较好的验证码包,拿出来分享一下,傻瓜式教程,
    • 安装步骤:
      • 首先,登录网址packagist.org查找 laravel captcha,找到mews/captcha ,根据packagist上的使用方法一步步来实现验证码的安装。
      • composer安装:
        composer require mews/captcha
        
      • 注册providers (config/app.php) ,在这个数组中的最后追加如下代码:
        MewsCaptchaCaptchaServiceProvider::class,
        
      • 注册aliases (config/app.php),在这个数组中的最后追加如下代码:
        'Captcha' => MewsCaptchaFacadesCaptcha::class,
        
      • 生成配置文件,在Composer命令行中输入如下命令:
        php artisan vendor:publish
        
      • 进入config/captcha.php 文件,修改default 数组 可以对验证码进行样式、数量、大小上的修改。
        'default'   => [
        'length'    => 5,
        'width'     => 100,
        'height'    => 34,
        'quality'   => 90,
        ],
    • 页面中使用:
    <div class="row">
        <div class="col-md-8">
            <input type="text" class="form-control {{$errors->has('captcha')?'parsley-error':''}}" name="captcha" placeholder="captcha">
        </div>
        <div class="col-md-4">
            <img src="{{captcha_src()}}" style="cursor: pointer" onclick="this.src='{{captcha_src()}}'+Math.random()">
        </div>
        @if($errors->has('captcha'))
            <div class="col-md-12">
                <p class="text-danger text-left"><strong>{{$errors->first('captcha')}}</strong></p>
            </div>
        @endif
    </div>
    • 点击图片刷新,如下代码:
      <img src="{{captcha_src()}}" style="cursor: pointer" onclick="this.src='{{captcha_src()}}'+Math.random()">
      • 重写AuthController 登录验证方法,并自定义提示信息:

      • 首先要引入如下代码:

        use IlluminateHttpRequest;
      • 重写validateLogin方法:
         protected function validateLogin(Request $request){
                $this->validate($request, [
                    $this->loginUsername() => 'required',
                    'password' => 'required',
                    'captcha' => 'required|captcha',  //注意这里验证码的验证在这里,不用写逻辑
                ],[
                    'captcha.required' => trans('validation.required'),
                    'captcha.captcha' => trans('validation.captcha'),
                ]);
            }
    • 字体库的下载与切换:
      • 首先需要下载字体库
      • 下载完成后,将压缩包中 src/zh-CN 文件夹拷贝到项目目录的 resources/lang 文件夹下。
      • 修改 config->app.php 文件,修改代码如下:
        'locale' => 'zh-CN',
    • 由于captcha在中文包中没有中文解释,所以需要手动添加中文解释,具体操作如下:
      • 打开 resources/zh-CN/validation.php,在总数组中追加如下键值对:
        'captcha'                  => ':attribute 不正确。',
      • 在 attributes 数组中追加如下键值对:
        'captcha'               => '验证码',
        https://laravel-china.org/articles/6736/laravel-code-captcha 
  • 相关阅读:
    自定义组件要加@click方法
    绑定样式
    647. Palindromic Substrings
    215. Kth Largest Element in an Array
    448. Find All Numbers Disappeared in an Array
    287. Find the Duplicate Number
    283. Move Zeroes
    234. Palindrome Linked List
    202. Happy Number
    217. Contains Duplicate
  • 原文地址:https://www.cnblogs.com/lxwphp/p/9524013.html
Copyright © 2011-2022 走看看