当我发送表格时,我会收到该页面。
The page has expired due to inactivity.
Please refresh and try again.
我该如何解决这个问题,以便当我点击提交按钮时,我不会放弃,只是更新页面。
其次,最重要的是,在提交表单中的数据后,我得到一个空数组,为什么?也就是说,按下提交按钮后,我将其放在我在顶部描述的页面上。 The page has expired due to inactivity
。在backspace
之后,如果按 Ctrl + u ,则在页面顶部可以看到此代码。
Array
(
)
为什么数组是空的?请告诉我如何解决它。
这是我的模板 contact.blade.php
@extends ("default.layouts.layout")
@section("content")
<div style="display: flex;">
<form method="post" action="{{ route ('contact') }}">
<label for="name">Name</label>
<input name="name" type="text" >
<label for="e-mail">E-mail adress</label>
<input name="e-mail" type="text">
<label for="site">Site</label>
<input name="site" type="text" style="margin-bottom: 10px;" >
<label for="text">Text</label>
<textarea name="text"></textarea>
<button style="background-color:lightslategrey" type="submit">Submit</button>
</form>
</div>
<style>
input {
display: flex;
}
</style>
@endsection
这是我的控制器 ContactController
<?php
namespace App\Http\Controllers\Admin;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
class ContactController extends Controller
{
public function show(Request $request){
print_r($request->all());
return view("default.contact",["title"=>"Contacts"]);
}
}
同时路由 web.php
<?php
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get("/",["as"=>"home","uses"=>"Admin\IndexController@show"]);
Route::get("/about",["uses"=>"Admin\AboutController@show", "as"=>"about"]);
Route::match(["get","post"],"/contact",["uses"=>"Admin\ContactController@show","as"=>"contact"]);
答案 0 :(得分:2)
修复以下错误
由于不活动,该页面已过期。
请刷新并重试。
将{{ csrf_field() }}
添加到表单
<form method="post" action="{{ route ('contact') }}">
{{ csrf_field() }}
...
</form>
答案 1 :(得分:0)
一个问题是您的表单上没有CSRF令牌。每次执行请求时,Laravel都需要CSRF令牌,否则只会出错。
将此添加到您的表单,看看它是否有帮助。
{{ csrf_field() }}