Перенаправить страницу, но по-прежнему приносить данные на Laravel - PullRequest
1 голос
/ 22 апреля 2019

Я хочу перенаправить страницу с контроллера, но все равно перенести данные / данные все еще там (имя данных «valueOne»)

Я пытался с этим кодом

return redirect()->back()->with('alert','test');

или

return view('login');

это моя форма в клинке:

//this data i get from other page, and keep this on this blade
<input id="valueOne" name="valueOne" type="hidden" value="{{ $result->valueOne }}">


    <form action="{{URL::to('/getHalaman')}}" method="post" id="form1">
    <div class="numberOne">Number One : 
      <select id="numberOne" name="numberOne">
        <option value="null" id="numberOne">-- choose --</option>
        <option value="a">a</option>
        <option value="b">b</option>
        <option value="c">c</option>
      </select>
      </div>

      <br>

      <div class="numberTwo" style="text-align: center;">Number Two : 
      <select id="numberTwo" name="numberTwo" style="width: 200px;">
        <option value="null">-- choose --</option>
        <option value="aa">aa</option>
        <option value="bb">bb</option>
      </select>
      </div>

      <br>
      <div class="button" style="text-align: center;">
      <input id="id" name="id" type="hidden" value="{{ $result->id }}">
      <script src="js/testButton.js" type="text/javascript"></script>
      <button id="buttonSubmit" type="submit" value="Submit"> Konfirmasi </button>
    </div>
      {{ csrf_field() }}
     </div>
     </form>

это мой контроллер:

function getHalaman(Request $req){
    $req->numberTwo == 'null';

        return redirect()->back()->with('alert','error');
    try {
         if($req->numberTwo == 'aa'){
            return view('numberOne')->with('a',$req->numberOne)->with('jaminan',$req->numberTwo)->with('id',$req->id);  
        } else {
            return view('numberTwo')->with('a',$req->numberOne)->with('jaminan',$req->numberTwo)->with('id',$req->id);
        }

    } catch (\Throwable $th) {
        return view('login');
    }
}

это мой маршрут:

Route::post('/getHalaman', 'userController@getHalaman');

я пытаюсь получить ошибку типа valueOne не найден

Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException

я ожидаю, что если пользователь не выберет эту опцию numberTwo, перенаправит на эту страницу, но все равно принесет valueOne

, любой может помочьмне ?большое спасибо хочу помочь мне ..

Ответы [ 3 ]

0 голосов
/ 22 апреля 2019
  <div class="numberTwo" style="text-align: center;">Number Two : 
  <select id="numberTwo" name="numberTwo" style="width: 200px;">
    <option value="null">-- choose --</option>
    @foreach ($titles as $key => $val)
    @if(Session::has('alert'))
          <option value="{{ Session::get('alert')}}" selected>{{ Session::get('alert')}}</option>
    @else
          <option value="{{ $key }}">{{ $val }}</option>
    @endif      
    @endforeach
  </select>
  </div>
0 голосов
/ 22 апреля 2019

Попробуйте с этим,

Первый дамп-автозагрузка Comopser

composer dump-autoload

На ваш взгляд,

@if(Session::has('message'))
     <p class="alert {{ Session::get('alert-class', 'alert-info') }}">{{ Session::get('message') }}</p>
@endif

Надеюсь, это поможет:)

0 голосов
/ 22 апреля 2019

Когда вы отправляете данные с помощью with, они сохраняются во флэш-данных сеанса, что означает, что вам нужно получить эти данные из сеанса. см. документацию Laravel об этом. Flash-данные для просмотра

, поэтому для получения данных из рассматриваемого сеанса, как показано ниже

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

Во-первых, мы проверяем, есть ли у сеанса оповещение или нет, если вы не отправляете

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...