Laravel5.6的表单验证器使用

首选要有个页面:

使用bootstrap和jquery

<!doctype html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><link rel="stylesheet" href="/css/bootstrap.css"><link rel="stylesheet" href="/css/bootstrap-theme.css"><title>添加用户</title>
</head>
<body>
<br><div class="container">@if($errors->all())<div class="panel panel-danger"><div class="panel-heading"><ul>@foreach($errors->all() as $error)<li>{{$error}}</li>@endforeach</ul></div></div>@endif<div class="panel panel-success"><div class="panel-heading"><h3 class="panel-title">添加用户</h3></div><div class="panel-body"><form action="{{route('user.adduser')}}" method="post" class="form-horizontal" role="form">
{{--                    csrf验证--}}{{csrf_field()}}<div class="form-group"><label class="col-sm-2 control-label">用户名</label><div class="col-sm-10"><input type="text" name="username" class="form-control" value="{{old('username')}}" title=""></div></div><div class="form-group"><label class="col-sm-2 control-label">密码</label><div class="col-sm-10"><input type="text" name="password" class="form-control" value="" title=""></div></div><div class="form-group"><label class="col-sm-2 control-label">重复密码</label><div class="col-sm-10"><input type="text" name="password_confirmation" class="form-control" value="" title=""></div></div><div class="form-group"><label class="col-sm-2 control-label">邮箱</label><div class="col-sm-10"><input type="text" name="email" class="form-control" value="{{old('email')}}" title=""></div></div><div class="form-group"><div class="col-sm-10 col-sm-offset-2"><button type="submit" class="btn btn-primary">Submit</button></div></div></form></div></div></div>
</body>
<script src="/js/bootstrap.js"></script>
<script src="/js/jquery.js"></script>
</html>

一、用控制器中的$this->validate方式去验证表单

创建路由

/**添加 用户*/
//显示
Route::get('adduser','UserController@index')->name('user.adduser');
//添加操作
Route::post('adduser','UserController@addSave')->name('user.adduser');

创建控制器

php artisan make:controller UserController
<?phpnamespace App\Http\Controllers;use Illuminate\Http\Request;use App\Http\Requests\UserRequest;
class UserController extends Controller
{//显示用户public function index(){return view('user.index');}//   添加用户public function addSave( Request $request){$input = $this->validate($request,[//验证规则
//            验证字段 => 验证规则  多个规则用 | 隔开'username' => 'required',
//            comfirmed 必须要在第一次输入密码中'password' => 'required|between:2,8|confirmed',
//            确认密码字段的格式必须是 密码字段_confirmation'password_confirmation' => 'required','email' => 'required|email'],[//汉字提示,默认英文,可选
//            验证字段.验证规则 => 所提示的汉字'username.required' => '用户名不能为空!','password.required' => '密码不能为空!','password.between' =>'密码需要在2到8位之间','password.confirmed'=> '两次密码不一致','password_confirmation.required' => '确认密码不能为空!','email.required' => '邮箱不能为空!','email.email' => '邮箱格式不正确!']);dd($request->all());}
}

二、独立方式去验证表单

创建控制器

php artisan make:controller UserController
<?phpnamespace App\Http\Controllers;use Illuminate\Http\Request;use Validator;use App\Http\Requests\UserRequest;
class UserController extends Controller
{//显示用户public function index(){return view('user.index');}//   添加用户public function addSave(Request $request){$validate = Validator::make($request->all(),[//验证规则
//            验证字段 => 验证规则  多个规则用 | 隔开'username' => 'required',
//            comfirmed 必须要在第一次输入密码中'password' => 'required|between:2,8|confirmed',
//            确认密码字段的格式必须是 密码字段_confirmation'password_confirmation' => 'required','email' => 'required|email'],[//汉字提示,默认英文,可选
//            验证字段.验证规则 => 所提示的汉字'username.required' => '用户名不能为空!','password.required' => '密码不能为空!','password.between' =>'密码需要在2到8位之间','password.confirmed'=> '两次密码不一致','password_confirmation.required' => '确认密码不能为空!','email.required' => '邮箱不能为空!','email.email' => '邮箱格式不正确!']);if(validate->fails()){return redirect()->black()->withErrors($validate);}}
}

三、验证器

创建验证器

php artisan make:request UserRequest

在验证器里写验证规则

<?phpnamespace App\Http\Requests;use Illuminate\Foundation\Http\FormRequest;class UserRequest extends FormRequest
{/*** Determine if the user is authorized to make this request.** @return bool*/public function authorize(){return true;}/*** Get the validation rules that apply to the request.** @return array*/public function rules(){return [//验证规则
//            验证字段 => 验证规则  多个规则用 | 隔开'username' => 'required',
//            comfirmed 必须要在第一次输入密码中'password' => 'required|between:2,8|confirmed',
//            确认密码字段的格式必须是 密码字段_confirmation'password_confirmation' => 'required','email' => 'required|email'];}//自定义提示public function messages(){return [
//汉字提示,默认英文,可选
//            验证字段.验证规则 => 所提示的汉字'username.required' => '用户名不能为空!','password.required' => '密码不能为空!','password.between' =>'密码需要在2到8位之间','password.confirmed'=> '两次密码不一致','password_confirmation.required' => '确认密码不能为空!','email.required' => '邮箱不能为空!','email.email' => '邮箱格式不正确!'];}
}

在控制器中使用,如下:

<?phpnamespace App\Http\Controllers;use Illuminate\Http\Request;use App\Http\Requests\UserRequest;
class UserController extends Controller
{//显示用户public function index(){return view('user.index');}//   添加用户public function addSave(UserRequest $request){dd($request->all());}
}

效果如下:

Laravel验证器的使用相关推荐

  1. laravel 验证器怎么验证json对象_Postman使用tv4进行JSON Schema结构验证和断言

    JSON Scheme简介 对于JSON格式的请求数据或者响应数据,在不同的数据和场景下往往会有一部分动态的值及字段.此时我们可以使用JSON Scheme Validator(JSON结构验证)来验 ...

  2. Laravel项目+Google验证器

    1.首先要在你的Laravel项目中安装Google验证器插件.二维码生成器插件,执行命令如下: # Google验证器插件安装命令: composer require "earnp/lar ...

  3. laravel validate 验证器

    1.简介 Laravel 提供了多种方法来验证应用输入数据.默认情况下,Laravel 的控制器基类使用ValidatesRequests trait,该trait提供了便利的方法通过各种功能强大的验 ...

  4. Laravel引入谷歌验证器

    一.首先安装composer包 命令如下 composer require "earnp/laravel-google-authenticator:dev-master" 二.因为 ...

  5. php极验证,WebGeeker-Validation: 一个强大的 PHP 参数验证器

    用于对API接口的请求参数进行合法性检查. 在实现服务端的API接口时,对于每一个接口的每一个参数,都应该检测其取值是否合法,以免错误的数据输入到系统中.这个工作可以说是费时费力,但又不得不做.而且P ...

  6. laravel-admin加谷歌验证器

    示意图 添加谷歌验证首先需要 参考: Laravel-admin 登录添加图形验证码 构建一个自己的登录系统 安装扩展 composer require "earnp/laravel-goo ...

  7. php验证法则是10位数字,WebGeeker-Validation: 一个强大的 PHP 参数验证器

    用于对API接口的请求参数进行合法性检查. 在实现服务端的API接口时,对于每一个接口的每一个参数,都应该检测其取值是否合法,以免错误的数据输入到系统中.这个工作可以说是费时费力,但又不得不做.而且P ...

  8. 9、 Struts2验证(声明式验证、自定义验证器)

    1. 什么是Struts2 验证器 一个健壮的 web 应用程序必须确保用户输入是合法.有效的. Struts2 的输入验证 基于 XWork Validation Framework 的声明式验证: ...

  9. SpringBoot自定义参数验证器

    前要 之前我们介绍了JSR-303验证方式,十分的方便Spring都帮我们封装好了,但是对一些复杂的验证,还是需要更加灵活的验证器的. JSR-303验证器传送门:https://www.jiansh ...

最新文章

  1. Linux 下实现虚拟光驱功能,查看iso文件内容
  2. 【 Notes 】RSSI,LOS versus NLOS,Positioning, Mobility, and Tracking,Network Localization
  3. sklearn学习(一)
  4. Golang 入门笔记(二)下
  5. oracle 排序的分析函数,oracle下数据的排序分组row_number() over()--分析函数,可用于去重...
  6. Linux中使用异步 I/O 大大提高应用程序的性能
  7. 英国出土1600年前的文物,上面居然刻着简体中文?!
  8. 全面支持3.0 新华三“力夯”可信计算发展
  9. 之前8年都在上班工资16000,厌倦了天天上班的日子,就裸辞了。现在很迷茫,下一步怎么办?
  10. 将截断字符串或二进制数据。
  11. Leetcode 刷题笔记(三十) ——动态规划篇之子序列问题:回文
  12. 笔试题: 数据库 已看1 一些关键的sql语句练习 和选择题 有用 sql语句练习 挺好...
  13. html跳转按钮谷歌浏览器点击没反应,在各个浏览器点击按钮都没有反应
  14. Unsafe code may only appear if compiling with /unsafe
  15. 疫情渐消,政策向好,车企的春天要回来了?
  16. 一副重现赤壁之战的神秘地图
  17. ai人工智能开发_人工智能使Web开发的面貌发生变化
  18. 用Java实现每天给对象发情话
  19. java后台管理页面_一个很不错的,代码简单的后台管理界面
  20. 小米平板4(Plus) LTE 开通话模式教程+root权限获取

热门文章

  1. java处理word文档 替换文本 水印 页眉
  2. 地图随意搜---情景地图
  3. 基于MPC的移动机器人轨迹跟踪控制qpOASES例程
  4. 【git】error: .repo/manifests/: contains uncommitted changes解决思路
  5. 计算机毕业设计之SpringBoot+Vue.js+WebMagic电商数据分析 电商大数据 电商数据采集系统 电商大屏 大数据毕业设计 电商知识图谱
  6. 《数字图像处理》学习总结及感悟:第二章数字图像基础(4)像素间的关系
  7. 案例:世界500强如何打造汽车后市场智慧门店
  8. 【postgres】源码结构
  9. NDK - JNI官方中文资料
  10. 10种令人吃惊的方式你的日常生活中正在收集数据的大数据野兽