2017-07-29 4 views
1

私はlaravelでログインフォームを行っています。私が望むのは、POST値を検証することです。それが正常であれば、ダッシュボラードにリダイレクトします。そうでない場合は、Inputでリダイレクトします。これは私のログインフォームです:Laravel - 入力でフォームバック

 <form method="post" autocomplete="off"> 
      <input type="hidden" name="_token" value="{{ csrf_token() }}"> 
      <div class="form-group"> 
       <label for="email">Adresse courriel:</label> 
       <input type="email" class="form-control" id="email" name="email" required> 
      </div> 
      <div class="form-group"> 
       <label for="password">Mot de passe:</label> 
       <input type="password" class="form-control" id="password" name="password" required> 
      </div> 
      <button type="submit" class="btn btn-aqua">Se connecter</button> 
     </form> 

そして、これは私のAuthController機能である:

public function postLogin(Request $request){ 

    Log::info('Showing user profile for user: '.$request); 


    if (Auth::attempt(['email' => $request->email, 'password' => $request->password])) { 
     return redirect()->route('/admin/dashboard'); 
    } 

    return redirect()->back()->withInput(Input::all()); 
} 

それが戻っリダイレクトだ、私の入力はノート満たされています。

<form method="post" autocomplete="off"> 
    <input type="hidden" name="_token" value="{{ csrf_token() }}"> 
    <div class="form-group"> 
     <label for="email">Adresse courriel:</label> 
     <input type="email" class="form-control" id="email" name="email" required value="{{ old('email') }}"> 
    </div> 
    <div class="form-group"> 
     <label for="password">Mot de passe:</label> 
     <input type="password" class="form-control" id="password" name="password" required> 
    </div> 
    <button type="submit" class="btn btn-aqua">Se connecter</button> 
</form> 

私は強く、パスワードを持ち帰るないことをお勧めします:

答えて

4

Laravelは、送信されたフォームにエラーがある場合は、入力データを戻しますold()機能を実装しています。私はこれが迷惑であることを知っていますが、より安全です。

さらに詳しい情報:https://laravel.com/docs/5.4/requests#old-input

+1

ありがとう!それは 'old()'と一緒に働いています –

+0

私は助けることができてうれしいです。誰かがそのトピックに来たら答えとしてこれを確認することを忘れないでください:) – Treast

関連する問題