【php开发工程师系统性教学】——Laravel框架(验证码)的配置和使用的保姆式教程

本文主要是介绍【php开发工程师系统性教学】——Laravel框架(验证码)的配置和使用的保姆式教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述


👨‍💻个人主页:@开发者-曼亿点

👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!

👨‍💻 本文由 曼亿点 原创

👨‍💻 收录于专栏:PHP程序开发

🅰

请添加图片描述


文章目录

    • 🅰
    • 前言
    • 🎶一、验证码依赖的安装与配置
      • (1)packagist网站搜索验证码的代码依赖
      • (2)配置依赖包
      • (3)修改文件
    • 🎶二、验证码的实现案例
      • (1)案例:在之前的自动验证的基础之上,实现验证码的显示
      • (2)验证码和自动验证的blade.php代码:
      • (3)自动验证的TestController.php代码:
      • (4)展示效果:
        • 结束语🥇


前言

生成验证码需要经过:画画布、生成干扰线、生成噪点、生成验证码、生成验证码存放在session、输入图片。


🎶一、验证码依赖的安装与配置


(1)packagist网站搜索验证码的代码依赖

关键词时captcha
在这里插入图片描述
地址:https://packagist.org/packages/mews/captcha
环境要求:php>=7.2,需要开启GD库,同时需要开启fileinfo和mbstring扩展
在这里插入图片描述

(2)配置依赖包

composer方法安装代码的依赖包:composer require mews/captcha

在这里插入图片描述
在这里插入图片描述

(3)修改文件

修改配置文件:config/app.php
配置:配置provider信息,添加1一行信息:
在这里插入图片描述
配置别名aliases键,添加一个别名记录
在这里插入图片描述

如果(可选)需要定义自己的配置,则需要生成配置文件:

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

在这里插入图片描述


🎶二、验证码的实现案例


(1)案例:在之前的自动验证的基础之上,实现验证码的显示

在这里插入图片描述
①需要在页面上显示出来
添加验证码图片的路径
在这里插入图片描述

(2)验证码和自动验证的blade.php代码:

<!DOCTYPE html>
<html lang="en">
<head>    <meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><link rel="stylesheet" href="css/weui.css"/><meta name="viewport" content="width=device-width, initial-scale=1.0">{{-- 系统的asset方法引入 --}}<link rel="stylesheet" type="test/css" href="{{asset('css')}}/app.css"><title>实战训练</title>
</head>
<body>@if ($errors->any())<div class="alert alert-danger"><ul>@foreach ($errors->all() as $error)<li>{{ $error }}</li>@endforeach</ul></div>
@endif<form method="post" action="">
<p>姓名:<input type="text" name='name' value="" ></p>
<p>年龄:<input type="text" name='age' value="" ></p>
<p>邮箱:<input type="text" name='email' value="" ></p>
{{ csrf_field() }}<input type="submit" value="提交">
</form>
</body>
</html>

(3)自动验证的TestController.php代码:

public function zdyz(Request $request){if($request->post()){$this->validate($request,['name' => 'required|min:1|max:3','age' => 'required|integer|min:1|max:100','email' =>'required|email',]);}else{//展示一个视图return view("/home/zdyz");}    
}

在这里插入图片描述

(4)展示效果:

在这里插入图片描述
②验证码验证操作:

public function zdyz(Request $request){if($request->post()){$this->validate($request,['name' => 'required|min:1|max:3','age' => 'required|integer|min:1|max:100','email' =>'required|email','captcha'=>'required|captcha']);}else{//展示一个视图return view("/home/zdyz");}    
}

在这里插入图片描述
注意·:验证码有效验证规则,手册里是没有的,如果使用mews验证包的话,其验证码验证规则就是captcha
效果展示图:
在这里插入图片描述

结束语🥇

以上就是PHP程序设计
持续更新PHP程序设计教程,欢迎大家订阅系列专栏🔥PHP程序开发你们的支持就是曼亿点创作的动力💖💖💖
请添加图片描述

这篇关于【php开发工程师系统性教学】——Laravel框架(验证码)的配置和使用的保姆式教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/923313

相关文章

C语言中联合体union的使用

本文编辑整理自: http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=179471 一、前言 “联合体”(union)与“结构体”(struct)有一些相似之处。但两者有本质上的不同。在结构体中,各成员有各自的内存空间, 一个结构变量的总长度是各成员长度之和。而在“联合”中,各成员共享一段内存空间, 一个联合变量

嵌入式软件工程师应聘知识点

嵌入式软件工程师应聘 修改浏览权限 | 删除 数据结构(C语言)部分常考的知识点: 1、局部变量能、全局变量和静态变量 2、堆和栈 3、Const、volatile、define、typedef的用途 4、链表(比如链表的插入、删除和排序) 5、排序(考查冒泡法的较多) 6、可重入函数 、malloc函数 7、指针(常考函数指针,函数指针,数组指针,指针数组和

Linux 安装、配置Tomcat 的HTTPS

Linux 安装 、配置Tomcat的HTTPS 安装Tomcat 这里选择的是 tomcat 10.X ,需要Java 11及更高版本 Binary Distributions ->Core->选择 tar.gz包 下载、上传到内网服务器 /opt 目录tar -xzf 解压将解压的根目录改名为 tomat-10 并移动到 /opt 下, 形成个人习惯的路径 /opt/tomcat-10

Tolua使用笔记(上)

目录   1.准备工作 2.运行例子 01.HelloWorld:在C#中,创建和销毁Lua虚拟机 和 简单调用。 02.ScriptsFromFile:在C#中,对一个lua文件的执行调用 03.CallLuaFunction:在C#中,对lua函数的操作 04.AccessingLuaVariables:在C#中,对lua变量的操作 05.LuaCoroutine:在Lua中,

uniapp接入微信小程序原生代码配置方案(优化版)

uniapp项目需要把微信小程序原生语法的功能代码嵌套过来,无需把原生代码转换为uniapp,可以配置拷贝的方式集成过来 1、拷贝代码包到src目录 2、vue.config.js中配置原生代码包直接拷贝到编译目录中 3、pages.json中配置分包目录,原生入口组件的路径 4、manifest.json中配置分包,使用原生组件 5、需要把原生代码包里的页面修改成组件的方

Vim使用基础篇

本文内容大部分来自 vimtutor,自带的教程的总结。在终端输入vimtutor 即可进入教程。 先总结一下,然后再分别介绍正常模式,插入模式,和可视模式三种模式下的命令。 目录 看完以后的汇总 1.正常模式(Normal模式) 1.移动光标 2.删除 3.【:】输入符 4.撤销 5.替换 6.重复命令【. ; ,】 7.复制粘贴 8.缩进 2.插入模式 INSERT

Lipowerline5.0 雷达电力应用软件下载使用

1.配网数据处理分析 针对配网线路点云数据,优化了分类算法,支持杆塔、导线、交跨线、建筑物、地面点和其他线路的自动分类;一键生成危险点报告和交跨报告;还能生成点云数据采集航线和自主巡检航线。 获取软件安装包联系邮箱:2895356150@qq.com,资源源于网络,本介绍用于学习使用,如有侵权请您联系删除! 2.新增快速版,简洁易上手 支持快速版和专业版切换使用,快速版界面简洁,保留主

如何免费的去使用connectedpapers?

免费使用connectedpapers 1. 打开谷歌浏览器2. 按住ctrl+shift+N,进入无痕模式3. 不需要登录(也就是访客模式)4. 两次用完,关闭无痕模式(继续重复步骤 2 - 4) 1. 打开谷歌浏览器 2. 按住ctrl+shift+N,进入无痕模式 输入网址:https://www.connectedpapers.com/ 3. 不需要登录(也就是

IDEA配置Tomcat远程调试

因为不想把本地的Tomcat配置改乱或者多人开发项目想测试,本文主要是记录一下,IDEA使用Tomcat远程调试的配置过程,免得一段时间不去配置到时候忘记(毕竟这次是因为忘了,所以才打算记录的…) 首先在catalina.sh添加以下内容 JAVA_OPTS="-Dcom.sun.management.jmxremote=-Dcom.sun.management.jmxremote.port

Eclipse+ADT与Android Studio开发的区别

下文的EA指Eclipse+ADT,AS就是指Android Studio。 就编写界面布局来说AS可以边开发边预览(所见即所得,以及多个屏幕预览),这个优势比较大。AS运行时占的内存比EA的要小。AS创建项目时要创建gradle项目框架,so,创建项目时AS比较慢。android studio基于gradle构建项目,你无法同时集中管理和维护多个项目的源码,而eclipse ADT可以同时打开