加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_新乡站长网 (https://www.0373zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

Laravel框架表单验证操作实例分析

发布时间:2022-09-19 14:48:35 所属栏目:PHP教程 来源:
导读:  这篇文章主要介绍了Laravel框架表单验证操作,结合实例形式分析了Laravel框架表单验证相关的表单数据提交、验证、错误信息提示等相关操作技巧,需要的朋友可以参考下

  本文实例讲述了Laravel框架表单验证操
  这篇文章主要介绍了Laravel框架表单验证操作,结合实例形式分析了Laravel框架表单验证相关的表单数据提交、验证、错误信息提示等相关操作技巧,需要的朋友可以参考下
 
  本文实例讲述了Laravel框架表单验证操作。分享给大家供大家参考,具体如下:
 
  public function create(Request $request){
  if($request->isMethod('POST')){
  //验证通过后继续进行
  //方法1 控制器验证
  $this->validate($request,[
  'Student.name' => 'required|min:2|max:20',
  'Student.age' => 'required|integer',
  'Student.sex' => 'required|integer',
  ],[
  'required'=>':attribute 为必填项',
  'min' => ':attribute 长度不符合要求',
  'integer' => ':attribute 必须是一个整形',
  ],[ 'Student.name' => '姓名',
  'Student.age' => '年龄',
  'Student.sex' => '性别',
  ]);
  //方法2 Validator类验证
  $validator = \Validator::make($request->input(),[
  'Student.name' => 'required|min:2|max:20',
  'Student.age' => 'required|integer',
  'Student.sex' => 'required|integer',
  ],[
  'required'=>':attribute 为必填项',
  'min' => ':attribute 长度不符合要求',
  'integer' => ':attribute 必须是一个整形',
  ],[ 'Student.name' => '姓名',
  'Student.age' => '年龄',
  'Student.sex' => '性别',
  ]);
  if($validator->fails()){
  return redirect()->back()->withErrors($validator)->withInput();
  }
  //如果验证通过,则继续执行下面的代码
  $data = $request->input('Student');
  if(Student::create($data)){
  return redirect('student/index')->with('success','添加成功');
  }else{
  return redirect()->back();
  }
  }
  return view('student.create');
  }
  注意Laravel的create方法,需要在model中
 
  设置允许批量赋值:
 
  protected $fillable = ['name','age'];
  web中间件有个作用是防止xss攻击,即csrf,需要在页面的表单中增加{{ csrf_field() }},
 
  会生成一个隐藏的input表单,带个token字段。
 
  错误信息的显示:
 
  控制器中的with方法PHP表单验证,可以把信息放入session中
 
  return redirect('Student/index')->with('success','添加成功');
  页面中的显示:
 
  @if(Session::has('success'))
 
  {{ Session::get('success') }}
 
  @endif
  @if(count($errors))
 
 
  @foreach($errors->all() as $val)
  {{$val}}
 
  @endforeach
 
 
  @endif
  {{$errors->first()}}可以显示第一条错误信息
 
  数据保持:
 
  return redirect()->back()->withErrors($validator)->withInput();
  这段代码中的withInput可以把表单提交的信息带回去,
 
  页面中使用old方法:
 
  姓名 :
  {{ old('Student')['name'] }}
 
  性别 :
  @foreach($student->user_sex() as $ind=>$val)
  {{$val}}
  @endforeach
  更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql(天博官网)数据库操作入门教程》及《php常见(天博官网)数据库操作技巧汇总》
 
  希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。
 

(编辑:开发网_新乡站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!