laravel框架——验证码(第一种方法)

一、在框架根目录下下载图形验证码的组件

composer require gregwar/captcha=1.*

二、控制器代码

复制代码
use Gregwar\Captcha\CaptchaBuilder;//使用

public function admin_log()//生成验证码且展示的方法
    {
        $builder = new CaptchaBuilder;
        $builder->build();
        $code = $builder->inline();  //获取图形验证码的url
        session()->put('piccode', $builder->getPhrase());  //将图形验证码的值写入到session中
        return view('Bigone/admin_log',['code'=>$code]);
    }
复制代码

三、视图代码

     <tr>
            <td>验证码</td>
            <td><input name="captcha" type="text" placeholder="请输入验证码"></td>
            <td><img src="{{$code}}" height="36" width="80"></td>
        </tr>

四、验证

复制代码
    public function admin_login(Request $request)
    {
        $data = $request->all();
        $captcha = $data['captcha'];
        $code = session()->get('piccode');
        if($captcha == '')
        {
            echo "<script>alert('请输入验证码!');</script>";
            return $this->admin_log();
            exit();
        }
        elseif($captcha!=$code)
        {
            echo "<script>alert('验证码错误!');</script>";
            return $this->admin_log();
            exit();
        }
        else
        {
            $user_pass = md5($data['user_pass']);
            $res = DB::select("select * from pzq_sysuser where user_name = '{$data['user_name']}' and user_pass = '$user_pass'");
            if($res)
            {
                echo "<script>alert('登陆成功!');</script>";
                return $this->index_show();
            }
            else
            {
                echo "<script>alert('登陆失败,请检查用户名和密码!');</script>";
                return $this->admin_log();
            }
        }
    }
复制代码

 

posted @   你的男孩  阅读(3270)  评论(2编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示