Контроллер индекса показан ниже
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class IndexController extends Controller
{
public function index()
{
return view('welcome');
}
public function about()
{
return view('about');
}
public function contact()
{
return view('contact');
}
public function thanks(Request $request)
{
$request->validate(['firstname' => ['required', 'alpha_num']]);
return view('thanks');
}
}
contact.blade. php ниже
@extends('welcome')
@section('content')
<div>
<h2>Contact Page</h2>
<form method="post" action="{{route("thanks")}}">
@csrf<input type="text" name="firstname"/>
<input type="submit"/>
</form>
@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
</div>
@endsection
Thanks.blade. php
@extends('welcome')
@section('content')
<div>
<h2>Thanks</h2>Thank you {{ $firstname }}
</div>
@endsection
welcome.blade. php
<div class="flex-center position-ref full-height">
<div class="content">
<div class="title m-b-md">
app
</div>
<div class="links">
<a href="{{ route('about') }}">About</a>
<a href="{{ route('contact') }}">contact</a>
</div>
<h1>{{$firstname}}</h1>
<div>
@yield('content')
</div>
</div>
</div>
web. php
<?php
Route::get('/', 'IndexController@index');
Route::get('/about', 'IndexController@about')->name('about');
Route::get('/contact','IndexController@contact')->name('contact');
Route::post('/contact','IndexController@thanks')->name('thanks');
Когда я нажимаю на контакт в welcome.blade. php он берет меня на страницу контактов где текстовое поле присутствует. Введенное значение должно появиться в thankyou.blade. php. Мне нужно, чтобы значение, введенное в текстовое поле, отображалось в thanks.blade. php при нажатии кнопки "Отправить". Заранее спасибо