@givemoneybiatch
Немного веб, немного гейм

Как вывести данные из формы на другой странице PHP/Laravel?

Всем привет. Стоит следующая задача.
На странице пользователь вводит свои данные и отправляет форму. Во время отправки генерируется пароль, который надо вывести на новой странице. У меня не получается вывести пароль на новой странице. На его месте просто пустота, никаких данных и ошибок.
Как я вижу:

index.php
<form id="trialForm" method="post" name="trialForm" class="ui form">
                      <input type="email" id="emailCompany" name="emailCompany" placeholder="Email Address" data-validate="email-address" autocomplete="off" required="required">
                      <input type="text" id="nameCompany" name="nameCompany" placeholder="Company Name" data-validate="company-title" autocomplete="off" required="required">
                      <input type="hidden" name="_token" value="{{{ csrf_token() }}}" />
                      <input type="hidden" name="_psw" value="{{{ str_random(8) }}}" /> <!--генерируем пароль-->
                      <button type="submit" class="ui huge green button">
                       Start Trial
                    </button>
                  </form>

После отправки, перенаправляем на новую страницу. Как организован роутинг:
routes.php
Route::post( '/' ,function() { return Redirect::to('/success'           , 301); });
Route::get( '/success' ,'Production\Website@Success' );

Функция Success в Website.php

public function Success(request $request)
    {
      $psw = $request->get('_psw'); //получаем значение из отправленной формы
      return view('pages.success.Success', compact("psw"));
    }


Затем на странице Success.php выводим наш пароль:
<div class="ui two column grid">
              <div class="column">
                Your temporary password
                <br />
                <b id="copyTarget">{{ $psw }}</b>
              </div>
              <div class="column">
                <div id="copyButton" class="ui button">Click to Copy</div>
              </div>
            </div>


Конечно пароль можно сохранить на клиенте, но мне все равно надо его передать на сервер. Такое впечатление, что данные ушли куда-то неизвестно куда. Подозреваю, что в routes.php при редиректе данные из формы не передаются. А может проблема еще в чем-то.
P.S. При попытке вывести на чистом пхп <?php echo $_POST["_psw"] ?> получаю ошибку "Undefined index: _psw". Получается, что данные из POST не передались на страницу success.php
Не соображу как передать данные?
  • Вопрос задан
  • 1438 просмотров
Пригласить эксперта
Ответы на вопрос 1
@qxcoder
---
Могу предположить, что параметр action у формы потерялся :)
<form id="trialForm" method="post" action="/" name="trialForm" class="ui form">
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы