laravel之表单篇

一、Controller介绍

1) Controller之Request

laravel中的请求使用的是symfony/http-foundation组件 请求里面存放了$_GET $_POST $_COOKIE $_FILES $_SERVER等数据 eg1: use Illuminate\Http\Request; class ExampleController extends Controller { public function request1(Request $request) { #1: 取值 echo $request->input('name'); //获取参数 echo $request->input('sex', '未获取到数据,这是默认值'); //如果没有这个参数,将采用默认值 echo $request->has('sex') ? $request->input('sex') : '无参数' ; //判断是否存在这个参数,存在输出,否则默认值 $request->all(); //获取所有的参数 #2: 判断请求类型 var_dump($request->method()); //请求类型 var_dump($request->isMethod('GET')); //是否是get请求 var_dump($request->ajax()); //是否是ajax请求 var_dump($request->is('student/*')); //判断访问路劲是否是这个 var_dump($request->url()); //获取当前的url } } eg2: namespace App\Http\Controllers; use Illuminate\Http\Request; class UploadController extends Controller { public function save(Request $request) { echo $request->input('file'); } } Route::any('upload/save', 'UploadController@save'); <form action="upload/save" method="post"> {{ csrf_field() }} <input type="text" name="file" value="123"> <input type="submit" value="提交"> </form> eg3: namespace App\Http\Controllers; use Illuminate\Http\Request; class RbacController extends BaseController { public function roleset(Request $request) { echo json_encode($request->input('rolename')); } } $.ajax({ type: 'POST', url: '/roleset', data: { rolename : $('#rolename').val()}, dataType: 'json', headers: { 'X-CSRF-TOKEN': "{{ csrf_token() }}" }, success: function(data){ } }); Route::any('/roleset', 'RbacController@roleset');

2) Controller之Session

laravel中session三种使用方式: a: HTTP request类的session()方法 b: session()辅助函数 c: Session facade

Controller之Response

Controller之Middleware

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Laravel提供了强大的表单验证工具,可以轻松地实现表单验证。 以下是一些基本的步骤: 1. 在控制器中创建一个验证器 使用以下命令创建一个验证器类: ``` php artisan make:request MyFormRequest ``` 这将创建一个名为`MyFormRequest`的类,用于验证表单。 2. 在验证器类中定义规则 在`MyFormRequest`类中,您可以使用`rules()`方法定义表单字段的验证规则。例如: ``` public function rules() { return [ 'name' => 'required|max:255', 'email' => 'required|email|unique:users|max:255', 'password' => 'required|confirmed|min:6', ]; } ``` 这个例子中,`name`字段是必需的,并且不能超过255个字符。`email`字段也是必需的,并且必须是一个有效的电子邮件地址,并且必须是唯一的。`password`字段必须与`password_confirmation`字段匹配,并且必须至少包含6个字符。 3. 在控制器中使用验证器 在控制器的方法中,您可以使用`MyFormRequest`类来验证表单数据。例如: ``` public function store(MyFormRequest $request) { // 如果验证失败,将自动重定向到之前的页面 // 并且错误消息将可用于 $errors 变量 $validatedData = $request->validated(); // 保存数据... } ``` 如果表单数据无效,Laravel将自动将用户重定向到之前的页面,并提供错误消息。 4. 显示错误消息 在视图中,您可以使用`$errors`变量来访问错误消息。例如: ``` @if ($errors->any()) <div class="alert alert-danger"> <ul> @foreach ($errors->all() as $error) <li>{{ $error }}</li> @endforeach </ul> </div> @endif ``` 这将在页面上显示所有验证错误消息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值