我希望将一个类似字符串的查询发送到POST请求,此字符串位于名为$info
$info = firstname=testing123&lastname=testing123&email=testing13@gmail.com&number=123
所以我的路线就像这样
Route::post('/action/{date}/{time}/{info}', 'Action@confirm');
我的表格就像这样
<form action="/confirmation/{{$date}}/{{$time}}/{{$info}}" method="POST">
{{ csrf_field() }}
<input type="text" name="action" required>
<button>Submit</button>
</form>
我无法传递$info
变量,我收到No such file or directory
错误。
如何使用路由将类似字符串的查询传递给POST请求?
答案 0 :(得分:2)
不需要在路由中定义查询参数。因此,您可以从路径定义中删除info
参数。
Route::post('/action/{date}/{time}', 'Action@confirm');
然后将查询字符串添加到表单
上的action
<form action="/confirmation/{{$date}}/{{$time}}?{{$info}}" method="POST">
...
</form>
在控制器中,您可以像访问任何其他参数一样访问数据
$firstname= $request->get('firstname');
或者,我会考虑传输该数据的不同方式。根据您提供的内容,看起来可能更适合在会话中存储该数据,然后在Action@confirm
方法中从会话中检索它。