laravel использует сессию для хранения поля ввода и перехода на другую страницу

Я новичок в laravel У меня есть форма с полями ввода, но я хочу отправить входные значения и показать на другой странице, используя сеанс, чтобы проверить их позже
Пожалуйста, ответьте с кодом, пожалуйста

Форма:

   <form id="booking-form">
<input class="indexinput" type="text" id="country" name="country"placeholder="Country">
<input class="indexinput" type="text" id="state" name="state"placeholder="State">
<input class="indexinput" type="text" id="city" name="city" placeholder="city">
</form>

<button class="button getbids" >GET BIDS</button><script type="text/javascript">
$(document).on('click', '.getbids', function() {
var loggedIn = {{ auth()->check() ? 'true' : 'false' }};
if (loggedIn)
window.location.replace('customer/dashboard');
if(!loggedIn)
$('#loginModal').modal('show');
});
</script>

маршрут

  Route::group(['middleware'=>['rolecustomer']], function () {

Route::get('/customer/dashboard', 'HomeController@index')->name('customer.dashboard');
});

контроллер:

  public function index()
{
return view('index.customer.customerdashboard');
}

0

Решение

Вы можете поместить значения в сессию (в контроллер) следующим образом:

$request->session()->put('sampleid', $samplevalue);

И получить их на странице лезвия, как это:

@if(Session::has('sampleid'))
<div class="alert alert-success">
{{Session::get('sampleid')}}
</div>
@endif

А в контроллере вот так:

if($request->session()->has('sampleid'))
{
$request->session()->get('collegeid');
}
0

Другие решения

Похоже, вы пытаетесь перенаправить пользователя, если пользователь не вошел в систему по определенному запросу. В Laravel есть промежуточное ПО, чтобы позаботиться об этом. Посмотрите на документацию. Это не так сложно настроить.

Все эти правила аутентификации могут быть обработаны промежуточным программным обеспечением Laravel.

Документация Middleware: https://laravel.com/docs/5.5/middleware

0

Просматривая ваш код, я понимаю, что вы пытаетесь проверить, прошел ли аутентификация пользователя после нажатия кнопки «Отправить». Если он аутентифицирован, вы перенаправляете его на customer/dashboard, Если он не аутентифицирован, вы отображаете модальный логин.

Проблема в том, что вы перенаправляете пользователя на страницу с помощью JavaScript, и вы не можете получить данные, отправленные с помощью формы. Так что я думаю, что вы пытаетесь использовать session чтобы получить данные формы в customer/dashboard, Вы можете достичь того, что вы хотите, просто, как показано ниже.

<form id="booking-form" method="POST" action="{{ route('customer.dashboard') }}">

измените свой код JavaScript на

<script type="text/javascript">
$(document).on('click', '.getbids', function() {
var loggedIn = {{ auth()->check() ? 'true' : 'false' }};
if (loggedIn)
$('#booking-form').submit();
if(!loggedIn)
$('#loginModal').modal('show');
});
</script>

Теперь сделайте ваш маршрут как

 Route::any('/customer/dashboard', 'HomeController@index')->name('customer.dashboard');
0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector