zoukankan      html  css  js  c++  java
  • laravel 5.2 使用 captcha 实现 验证码

    案例:

      

     一 .  首先在laravel的项目下找到composer.json 文件 ,在composer.json中的require数组中加上 

        "gregwar/captcha": "1.*",   使用composer update  命令更新一下  这样一来的话,就算是安装上这个库或者是中间件了。之后就可以放肆的写你的代码了

    二. 定义路由:
      
    Route::get('/admin/code','AdminLoginController@code');

     定义好路由后在控制器加入一下代码:

     

    <?php
    
            use GregwarCaptchaCaptchaBuilder;
            
             public function code(Request $request)
           {
             //生成验证码图片的Builder对象,配置相应属性 
                 $builder = new CaptchaBuilder;
             //可以设置图片宽高及字体
                 $builder->build(120, 40);
             //存储验证码
                 Session::set('admin_yzm', $builder->getPhrase()); 
             //生成图片
                 header("Cache-Control: no-cache, must-revalidate");
                 header('Content-Type: image/jpeg');
                 $builder->output();
    
           }    

     三 . blade 模板的调用

      

     <form method="post" class="layui-form" action="{{url('/login_do')}}">
                <input name="username" placeholder="用户名"  type="text" lay-verify="required" class="layui-input" >
                <hr class="hr15">
                <input name="password" lay-verify="required" placeholder="密码"  type="password" class="layui-input">
                <hr class="hr15">
                <input type="text" class="" placeholder="验证码" id="yzm" name="yzm" style=" 50%;height: 40px;padding: 6px 12px;font-size: 14px;border: 1px solid #cccccc;border-radius: 4px;">
                {{csrf_field()}}
                <a onclick="re_captcha()" ><img src="{{url('/admin/code?tmp=1')}}"  alt="验证码" title="刷新图片" width="120" height="40" id="c2c98f0de5a04167a9e427d883690ff6" border="0"></a>
                <input value="登录" lay-submit  style="100%;" type="submit">
                <hr class="hr20" >
    
            </form>
    
    JS代码:
        <script>
        function re_captcha() {
                $url = "{{ URL('/admin/code')}}";
                $url = $url + "?tmp=" + Math.random();
                document.getElementById('c2c98f0de5a04167a9e427d883690ff6').src=$url;
            }
        </script>

    大功告成,欢迎各位提供建议

      

      
  • 相关阅读:
    2.最详细的WSDD配置文件注释
    1.Apache Axis配置文件WSDD详解
    26. Intellij IDEA 启动项目ClassNotFoundException
    警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property ..
    Java 远程通讯技术及原理分析
    Hibernate 中配置属性详解(hibernate.properties)
    SSH之IDEA2017整合Struts2+Spring+Hibernate
    java对象与json对象间的相互转换
    25.怎样在IDEA中使用JUnit4和JUnitGenerator V2.0自动生成测试模块
    24. 在IDEA中使用JUnit进行方法测试
  • 原文地址:https://www.cnblogs.com/dadiaomengmei/p/11655827.html
Copyright © 2011-2022 走看看