首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Laravel两个表单提交到同一个控制器并重定向回来

Laravel是一种流行的PHP开发框架,用于构建Web应用程序。它提供了许多便捷的功能和工具,使开发过程更加高效和简便。在Laravel中,可以通过使用表单来收集用户输入数据,并将其提交到后端进行处理。

要实现两个表单提交到同一个控制器并重定向回来,可以按照以下步骤进行操作:

  1. 创建两个表单:可以在视图文件中使用HTML表单元素来创建两个表单。确保每个表单都有唯一的表单标识符(form ID)。
  2. 在路由文件中定义路由:在Laravel的路由文件中,定义一个POST请求类型的路由,将其指向同一个控制器方法。例如:
代码语言:txt
复制
Route::post('/submit-form', 'FormController@processForm')->name('submit-form');
  1. 创建控制器方法:在控制器文件中,创建一个方法来处理表单提交的逻辑。在该方法中,可以使用Request对象来获取表单数据,并执行相应的操作。例如:
代码语言:txt
复制
use Illuminate\Http\Request;

class FormController extends Controller
{
    public function processForm(Request $request)
    {
        // 处理第一个表单的逻辑
        $data1 = $request->input('data1');

        // 处理第二个表单的逻辑
        $data2 = $request->input('data2');

        // 执行其他操作...

        return redirect()->back();
    }
}
  1. 在视图文件中设置表单提交地址:在每个表单的HTML代码中,将表单的action属性设置为路由的名称,以便将表单数据提交到相应的控制器方法。例如:
代码语言:txt
复制
<form action="{{ route('submit-form') }}" method="POST">
    <!-- 表单字段和提交按钮 -->
</form>

通过以上步骤,可以实现两个表单提交到同一个控制器并重定向回来的功能。在控制器方法中,可以根据需要处理每个表单的数据,并执行其他操作。最后,使用redirect()->back()方法将用户重定向回原来的页面。

请注意,以上答案中没有提及腾讯云相关产品和产品介绍链接地址,因为这些内容与Laravel两个表单提交到同一个控制器并重定向回来的功能没有直接关联。如果您需要了解腾讯云相关产品和服务,请参考腾讯云官方文档或咨询腾讯云官方支持。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Laravel5.2之Demo1——URL生成和存储

URL链接并重定向 1、创建数据库并迁移数据表单 表迁移(Migrations)其实就是数据库(Database)的版本控制,允许团队修改数据库架构,并保存当前数据库最新架构信息,为了创建并迁移创建的...4、保存数据进入数据库 写好视图表单后,再就是写表单的提交路由及其控制器逻辑,在控制器中引用创建好的Link这个Model往links数据表里存数据。...在验证表单时首先需要写验证规则$rules,本demo仅有一个输入且输入要符合URL格式,那就要考虑两个问题:怎么得到表单的输入$input和怎么写符合URL的$rules验证规则。...first()方法取出第一个结果: $link = Link::where('url','=',Input::get('link'))->first(); (2).如果数据表里有该链接,重定向表单页面并带上数据表的...(5).再重定向表单提交页面 return Redirect::to('/url') ->withInput() ->with('link', $newHash

24.1K31

Laravel 开发 RESTful API 的一些心得

laravel用的是中划线(-),因为谷歌收录时,按中划线划分关键字,国内的是按下划线(_)收录,具体看自己了,我是喜欢下划线 >_< 更多看这里: 路由命名规范 表单验证 可以使用控制器自带的表单验证...,更推荐使用 表单类,能分离都分离出去,控制器不要处理太多事情。...,捕获之后,表单错误消息可以很好的格式化, ModelNotFoundException这个是模型找不到的异常,捕获之后,可以直接在控制器直接这样 // 未捕获之前的写法 public function...目录的东西(其他可以删除了) 下载swagger-editor 只要dist目录的东西和根目录的index.html 我还把swagger-editor的index.html改成了edit.html,然后把这两个东西整合到同一个目录...工作和API开发有关,用到其他有经验了再回来补补。

33610

Laravel 5.0 之 表单验证类 (Form Requests)

. ---- 让人头痛的表单验证 只要你曾经在使用 Laravel 框架的过程中试图找到有关用户输入验证的最佳实践, 你就应该了解这是一个争论最多并且几乎没有达成共识的话题....Laravel 5.0 新引入的表单请求 (Form Request) 特性提供了集规范性 (差不多就是 "最佳实践" 的意思) 和便捷性 (这是比之前任何一种选择都更强大也更便捷的方式) 于一体的,...Form Requests 使表单验证不再让人头痛 Laravel 5.0 带来了 Form Requests, 这是一种特殊的类型, 用于在提交表单时进行数据的检查和验证....Laravel 会在解析 POST 路由之前自动把用户输入的信息传递给相应的表单请求, 因此我们的所有验证逻辑都可以移到独立于控制器和模型之外的 FormRequest 对象中....提交表单, 你可以看到我们并没有往控制器中添加任何一行验证逻辑, 但是验证规则已经生效了. 其它用例 如果对 "新增" 和 "编辑" 有不同的规则, 或者根据不同的输入进行不同的验证, 要怎么办呢?

3.8K50

Laravel 控制器:从 MVC 模式聊起

3、获取用户输入 除了数据渲染之外,还可以在控制器中获取用户输入并进行处理,下面我们来看两个例子: Route::get('task/create', 'TaskController@create');...关于表单渲染我们放到后面去讨论,现在我们直接跳到表单数据处理上,所以编写 store() 方法: public function store(Request $request) { $task...Task 模型类,然后将用户重定向到显示所有任务的页面。...在 Laravel 中所有的控制器方法(包括构造函数)都会在服务容器中进行解析,这意味着所有方法中传入的可以被容器解析的接口/类型提示对应服务实现都会被自动注入,我们将这个过程称之为依赖注入。...5、资源控制器 有时候在编写控制器时命名方法名称可能是最困难的,好在 Laravel 为常见的 REST/CRUD 控制器(在 Laravel 中称之为「资源控制器」)提供了一套约定规则,并为此提供了相应的

11.2K51

基于laravel Request的所有方法详解

通过依赖注入 要通过依赖注入得到当前 HTTP 请求的实例,需要在你的控制器构造函数或者方法里 type-hint 类。当前请求的这个实例会被 Service Container 自动注入进来。 <?...public function store(Request $request) { $name = $request- input('name'); // } } 如果你的控制器方法期待来自路由参数上的...比如,你可能需要在验证了输入错误之后重新填写表单。 把输入值闪存到会话里 flash 方法可以把当前的输入的值闪存(flash)到会话( session) 里。...你想闪存输入值并且用一个重定向(redirect)到前一个页面上,可以把输入闪存链到一个重定向上。...检索一个上传了的文件 $file = Request::file('photo'); 确定一个文件是不是被上传了 if (Request::hasFile('photo')) { // } file 方法返回来的对象是

3.3K31

Laravel5.6 文件上传以及文件管理后台

今天聊聊在Laravel5.6 如何实现文件上传功能,以及上传文件的管理功能。主要有文件列表,上传新文件,创建文件夹,删除文件夹以及删除文件。...Laravel文件上传Storage使用的是local disk,上传文件保存在/storage/app下,并以此为根目录。...image 新建文件夹 控制器 参数验证,只做简单的required验证,因此使用控制器验证,不再另见Request类验证。创建目录输入两个参数,一个是当前目录,一个是新建目录名。...moda内容中只有一个表单,点击确定提交到createFolder,在列表中点击New Folder可以看到以下内容 ?...moda内容中只有一个表单,点击确定提交到upload,在列表中点击upload可以看到以下内容 ?

1.8K20

3分钟短文:Laravel的“南天门”,过滤掉七七八八的数据

如果你对源码稍加留意,可能就会注意到,laravel的 Controller 类引入了 ValidatesRequests 这个验证 trait。...首先假设有两个路由,在 routes/web.php 文件内添加下面的代码: Route::get('recipes/create', 'RecipesController@create'); Route...::post('recipes', 'RecipesController@store'); 其中get方法是用于渲染recipe创建的表单,post方法用于接收表单来的数据,我们先实现get的控制器方法...是的,这是laravel框架写好了,如果验证失败,会使用 MessageBag 这些类来状态验证失败的信息,然后将错误信息渲染到公共模板部分,使用 $errors 接收,这是一个对象,可以手动遍历输出。...如果验证失败,构建 Response 对象进行重定向,并使用 withErrors 语法糖将验证提示信息返回,而重定向的页面内,可以使用 $errors 变量获取到所有的错误信息。

1.9K10

Laravel 控制器中进行表单请求字段验证

很多 Web 框架都对此功能专门提供了工具集,Laravel 也不例外,而且这个工具集异常丰富,基本上涵盖了目前主流的所有验证规则,即使是一些非常个性化的验证,也可以基于 Laravel 验证类的扩展功能来自定义验证规则...接下来,我们就一起来看看如何在 Laravel 中对表单请求进行验证。...作为一个灵活的框架,Laravel 提供了多种方式对表单请求进行验证,你可以在控制器中通过 $this->validate() 方法验证用户请求,也可以通过单独的表单验证类定义验证规则,再将其注入到相应的控制器方法...('form.submit'); 然后,修改 resources/views/request/form.blade.php 视图中的表单,新增两个字段,并将表单提交 URL 修改为上面定义的路由: <...响应(错误码为 422),如果是正常的 POST 表单请求的话,会重定向表单提交页,并包含所有用户输入和错误信息,以便重新渲染已填写表单并显示错误信息。

5.8K10

3分钟短文:Laravel的“南天门”,过滤掉七七八八的数据

如果你对源码稍加留意,可能就会注意到,laravel的 Controller 类引入了 ValidatesRequests 这个验证 trait。...首先假设有两个路由,在 routes/web.php 文件内添加下面的代码: Route::get('recipes/create', 'RecipesController@create'); Route...::post('recipes', 'RecipesController@store'); 其中get方法是用于渲染recipe创建的表单,post方法用于接收表单来的数据,我们先实现get的控制器方法...是的,这是laravel框架写好了,如果验证失败,会使用 MessageBag 这些类来状态验证失败的信息,然后将错误信息渲染到公共模板部分,使用 $errors 接收,这是一个对象,可以手动遍历输出。...如果验证失败,构建 Response 对象进行重定向,并使用 withErrors 语法糖将验证提示信息返回,而重定向的页面内,可以使用 $errors 变量获取到所有的错误信息。

1.1K00

Laravel 5.0 发布, 海量新特性!!

新版本带来了众多令人激动的新特性, 尤其是定时任务队列和表单请求两个特性, 光看一下更新说明中的简单介绍都忍不住要上手尝试了...., 可以查看它的完整文档 表单请求 Laravel 5.0 带来了全新的 form requests, 它扩展自 Illuminate\Foundation\Http\FormRequest 类....这意味着当你的控制器被调用时, 你可以安全地使用该请求中包含的输入数据, 因为他们已经被你在表单请求类中指定的规则进行过验证了....不仅如此, 如果该请求验证失败, 系统还会自动重定向到你预定义好的路由, 并且包含有错误提示的信息(根据需要写入session, 或者转换为 JSON 格式.) 表单验证从未如此简单过....控制器请求简单验证 Laravel 5.0 的控制器基类还包含了一个 ValidatesRequests 的 trait. 该 trait 提供了简单的 validate 方法, 用于验证请求.

4.1K60

Laravel 自动生成验证的实例讲解:login logout

Laravel 自动授权讲解 看到这部分文档,经常看见的一句话就是php artisan make:auth,经常好奇这段代码到底干了什么,现在就来扒一扒。...ResetPasswordController@reset'); } 这一部分先讲注册,首先,可以看到登录(login)的路由指向的是Auth\LoginController@showLoginForm,这个控制器是...下面我们来看该视图: <form class="form-horizontal" method="POST" action="{{ route('login') }}" </form 而其中最重要的就是看这个表单被提交到了哪里...logout(Request $request) { Auth::guard()- logout(); $request- session()- invalidate(); // 自定义重定向地址...以上这篇Laravel 自动生成验证的实例分析:login / logout就是小编分享给大家的全部内容了,希望能给大家一个参考。

80141

Laravel框架关键技术解析

Events:用来放置与事件相关的类 Http:主要包含路由文件、控制器文件、请求文件、中间文件等,是应用程序与Laravel框架源代码等外部库交互的主要地方 Jobs:主要包含消息队列的各种消息类文件...[/{参数名}……]’,’控制器类名@函数名称’);参数与顺序有关,与命名无关 隐式控制器路由:Route::controller(‘路由前缀’,’控制器类名’[,命名路由]);请求结构为”主机地址/路由前缀...中对于响应生成的三种形式 只生成响应主体内容部分 生成响应的首部和主体部分 生成重定向的响应,即只包含响应的重定向首部 2.生成响应的主体内容:return “字符串”或return view(‘xxx...’) 3.生成自定义响应的实例:new Response()、response() 4.生成重定向的响应:重定向响应是一个特殊的响应,只是在响应报文首部中包含了Location重定向字段,Laravel...:Controller基类使用了一个ValidatesRequests的trait,其中的validate()函数用于完成数据验证结果的判断、错误令牌存储以及重定向 2.表单请求验证:php artisan

11.9K20

Laravel系列3.2】路由:指哪儿打哪儿

Restful 风格的 URL 多个 URI 指向同一个控制器(可以在路由中区分参数) URI 和 控制器 解耦,自由定义名称,不受控制器里面方法名的限制 很多场景都不需要控制器,比如一个静态页面,直接路由里就可以搞定了.../get/request/1 // http://laravel8/get/request/1/1 404 在这个路由中,我们指定了两个参数,一个是 id 一个是 name ,当使用 /get/request...然后使用 redirect()->route() 方法就可以实现路由的跳转重定向。其中直接使用 route() 方法可以生成一个指定路由的链接字符串。...比如我们有一组链接,都归属于同一个资源下,比如下面这几个链接: http://laravel8/temp/ http://laravel8/temp/{id} http://laravel8/temp/...当然,这个链接名我们怎么写都可以了,而且都指向同一个控制器中的方法也没有什么问题。需要注意的这个控制器写的格式是完整的 命名空间 名,然后接一个 @ 符号后面是方法名。

11.8K10

30分钟用Laravel实现一个博客

编辑这两个迁移文件 create_blogs // 首先类定义中,有两个方法,up()可以理解为正向操作:创建表,而 down()可以理解为回滚操作:删除表。...因此我们再创建两个模型。 php artisan make:model Blog, 关于评论表的模型请自己写。...Laravel提供了一种防范这种攻击的手段,即将自己的路由隐藏起来,只有带有 @csrf 声明的表单可以找得到接收表单信息的路由 编辑 BlogController@store public function..._message') 编辑 BlogController 里的各种方法,在执行成功某些方法时,页面重定向前,装载闪存。...一旦表单提交的数据不符合 Request@rules Laravel会自动帮我们生成一个叫 $errors 的数组,它存放着所有的错误信息, 我们在视图上通过判断它是否有 content 字段来判断是否是表单提交的评论有问题

7.3K00

Laravel 5.5 LTS 正式发布!

Responsable 响应接口 Laravel 为响应方法新增了一个 Responsable 接口。 实现接口的类可以从控制器方法返回。...return redirect() ->route('songs.show', $this->song); } } 如你所见,在默认情况下,程序会重定向到路由...请求中的验证方法 在 Laravel 的过去版本中,你可以将请求实例传递给控制器中的 $this->validate() 方法: $this->validate(request(), [...]); 现在...模板中使用以下写法来判断的用户的登录情况: @if(auth()->check()) {{ -- authenticated --}} @endif @if(auth()->guest()) 现在,你可以简单的使用这两个新指令来实现这一效果...这听起来很像 migrate:refresh 命令,它会回滚并重新迁移。但通常在开发过程中,你会更倾向于一口气删除所有表再来运行迁移。而 migrate:fresh 做的正是这件事情。

2.5K30
领券