Blogger Information
Blog 128
fans 9
comment 5
visits 240780
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
19.)PHPWeb开发框架~Laravel中生成验证码配置文件及验证操作
 一纸荒凉* Armani
Original
1444 people have browsed it

laravel 验证码使用示例

1、验证码下载

https://packagist.org/ 网站搜索验证码的代码依赖,关键词:captcha

地址:https://packagist.org/packages/mews/captcha

2、 环境要求

PHP版本>=5.4、需要开启GD库,同时需要开启fileinfo和mbstring扩展

3、验证码安装

使用Composer进行安装代码依赖包:

composer require mews/captcha

img

4、修改配置文件

修改配置文件:config/app.php

1、配置providers数组信息,添加一行信息:

Mews\Captcha\CaptchaServiceProvider::class,

img

2、配置别名aliases键,添加一个别名记录

'Captcha' => Mews\Captcha\Facades\Captcha::class,

img

5、生成配置文件

如果需要定义自己的配置,则需要使用以下命令生成配置文件(config/captcha.php)

php artisan vendor:publish

输入刚刚添加的配置信息的序号生成相应配置文件

发布之后会在config目录下找到对应的配置文件:

img

<?phpreturn [    'characters' => ['2', '3', '4', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'j', 'm', 'n', 'p', 'q', 'r', 't', 'u', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'J', 'M', 'N', 'P', 'Q', 'R', 'T', 'U', 'X', 'Y', 'Z'],    'default' => [        'length' => 4,        'width' => 120,        'height' => 36,        'quality' => 90,        'math' => false,        'expire' => 60,        'encrypt' => false,    ],    'math' => [        'length' => 9,        'width' => 120,        'height' => 36,        'quality' => 90,        'math' => true,    ],    'flat' => [        'length' => 4,        'width' => 160,        'height' => 46,        'quality' => 90,        'lines' => 6,        'bgImage' => false,        'bgColor' => '#ecf2f4',        'fontColors' => ['#2c3e50', '#c0392b', '#16a085', '#c0392b', '#8e44ad', '#303f9f', '#f57c00', '#795548'],        'contrast' => -5,    ],    'mini' => [        'length' => 3,        'width' => 60,        'height' => 32,    ],    'inverse' => [        'length' => 5,        'width' => 120,        'height' => 36,        'quality' => 90,        'sensitive' => true,        'angle' => 12,        'sharpen' => 10,        'blur' => 2,        'invert' => true,        'contrast' => -5,    ]];

6、使用案例

需要在页面上显示出来

img

img

如果需要自定义配置(如长度、宽高等),可以修改配置文件config/captcha.php文件。

在表单视图模板代码:加上一行:

 <p>验证码:<input type="text" name="captcha"><img src="{{captcha_src()}}" alt=""></p>

captcha_src() 参数可选,默认使用default配置项,可以传入对应的配置项数组键名称

 <p>验证码:<input type="text" name="captcha"><img src="{{captcha_src('inverse')}}" alt=""></p>

②验证码验证操作

img

注意:验证码有效性验证规则,手册里是没有的,如果使用mews验证码包的话,其验证码验证规则就是captcha

控制器中进行验证

验证规则:

'captcha'=>'required|captcha'

解决翻译的问题:

修改语言包文件:validation.php

img

在数组中添加captcha元素即可

img

当然我们也可以不使用表单自动验证这种方式,而是先接收异步提交过来的数据。

然后通过验证码校验方法进行验证,自定义返回JSON格式数据。

$admin = Request::post();$captcha = $admin['captcha'];if(!captcha_check($captcha)){       exit(json_encode(['code'=>1,'msg'=>'验证码不正确,请重新输入!']));}

显示效果展示:


Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post