手机版

laravel5.4生成验证码的代码

时间:2021-09-03 来源:互联网 编辑:宝哥软件园 浏览:

本博客介绍了使用Greg war/验证码实现验证码的具体操作步骤,以及可能出现的问题和解决方法。

操作步骤:

1.在laravel5.4项目的根目录下找到file composer.json,

将“Greg war/captcha”:“dev-master”和“Greg war \ \ captcha \ \”:“vendor/captcha/”添加到composer.json文件中,如下图所示。

然后,在项目的根目录下运行composer update,然后运行composerdump-autoload命令。

第二种方法:

增加

Greg war/验证码' : '1。*”到composer.json,如下图所示。

2.然后打开命令行,找到项目的根目录,运行composer update,

您可以看到这个扩展库已经下载。

3.接下来,您可以正常使用验证码。

首先定义路线:

接下来,我们将介绍两种显示验证码的情况:

首先,在网页上直接输出验证码图片

在控制层新建一个codeController.php,1,1?php2命名空间App \ Http \ Controllers

使用App \ Http \ Requests使用App \ Http \ Controller \ Controller;使用照明\ Http \ Request//引用相应的命名空间usegregwar \ captcha \ captchbuilder;使用会话;类CodeController扩展了Controller { public function captcha($ temp){ $ builder=new captchBuilder();$builder-build(150,32);//获取验证码内容$短语=$ builder-get词组();//将内容保存在session session : flash(' milk captcha ',$短语)中;//存储验证码ob _ clean();//清除cache return response($ builder-output())-header(' content-type ',' image/JPEG ');//输出jpeg图像格式的验证码数据}}然后在浏览器中访问之前定义的路由,直接访问这个方法就可以看到输出的验证码

第二种方法:在表单中显示验证码,将上面的文件路径写入img标签的src属性,

显示如下:

这里有两个问题需要注意。如果按照下面的方法直接输出验证码,会发现验证码无法显示,而是一堆乱码。

公共函数代码($tmp){//生成验证码图片的Builder对象,配置对应的属性$ builder=new CaptchaBuilder//可以设置图片的宽度和高度以及字体$ builder-build ($ width=100,$ height=40,$ font=null);//获取验证码的内容$短语=$ builder-get词组();//将内容保存在session session : flash(' milk captcha ',$短语)中;//生成图片标题(' cache-control : no-cache,必续');//清除缓存头('内容类型:图像/JPEG ');$ builder-output();}

输出$短语,发现验证码的内容已经获取,这是图片生成部分的一个问题。

//标头(' Cache-Control:无缓存,必须重新验证');这一行代码的作用是清除缓存,防止验证码被刷新或显示,但是不起作用。而是使用ob _ clean();清除浏览器缓存。[/code]

然后是

标题(' Content-type : image/JPEG ');$ builder-output();这两句话的问题,

$ builder-output();只返回验证码图片的部分信息,不是图片,所以直接输出时就不是图片了。

只能这样写

只有直接输出$ builder-output()-header(' content-type ',' image/JPEG ')时,验证码才会以图片的形式直接输出。[/code]

当你把它放到img的src属性中,img标签会自动以图片的形式输出,也就是说,

Header('内容类型',' image/JPEG ')这个句子在这个时候是不需要的,那么是否需要呢

$ builder-output())-标头('内容类型','图像/JPEG '),或

标题(' Content-type : image/JPEG ');$ builder-output();这样写,结果会显示验证码图片。

以上就是本文的全部内容。希望对大家的学习有帮助,支持我们。

版权声明:laravel5.4生成验证码的代码是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。

相关文章推荐