Laravel 7 - Как отобразить старый ввод в форме входа после перенаправления обратно из-за неудачной попытки входа? - PullRequest
0 голосов
/ 20 июня 2020

Я пытаюсь отобразить старые данные, введенные пользователем до того, как пользователь неудачно попытался войти в форму входа в систему, но старые данные не отображаются в поле ввода электронной почты, хотя я успешно получил данные в своем контроллере (проверил его с помощью dd()).

Пробовал все решения здесь, но у меня ничего не работает: Как я могу перенаправить со старым вводом в Laravel?

Как на отобразить предыдущий / старый ввод (только адрес электронной почты) в поле ввода электронной почты формы входа?

Вот фрагмент кода метода login моего LoginController:

public function login(Request $request)
    {
        $this->validate($request, [
            'email' => 'required|email',
            'password' => 'required',
        ]);
        $request->flash();

        $inputs = $request;

        $remember = $request->has('remember') ? true : false;
        
        if (Auth::attempt(['email' => $request->input('email'), 'password' => $request->input('password')], $remember))
        {
            activity()
            ->useLog("User")
            ->causedBy(Auth::user())
            ->performedOn(Auth::user())
            ->log('Logged-In.');
            
            return redirect('/home');
        }else{
            Toastr::error('The E-Mail Address and/or Password you inputted is wrong.', 'Error');
            //dd($request->except('password'));
            return redirect('/login')->withInput($request->except('password'));
        }
    }

Вот мой фрагмент кода для моего login.blade.php:

<div class="input-group mb-3">
     <input id="email" 
            type="email" 
            class="form-control @error('email') is-invalid @enderror" 
            name="email" 
            value="{{ old('email') }}" 
            placeholder = "E-Mail Address" 
            required>

            @error('email')
                 <span class="invalid-feedback" role="alert">
                     <strong>{{ $message }}</strong>
                 </span>
            @enderror
            <div class="input-group-append">
                <div class="input-group-text">
                     <span class="fas fa-envelope"></span>
                </div>
            </div>
 </div>

Вот моя форма входа:

введите описание изображения здесь

1 Ответ

0 голосов
/ 04 июля 2020

Вы должны перенаправить обратно с помощью вспомогательного метода back() вместо перенаправления на указанный c url

return redirect()->back()->withInput($request->except('password'));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...