Laravel 7 Помните меня, функция верна - PullRequest
0 голосов
/ 29 марта 2020

Я искал в inte rnet способ создания функции "Запомнить меня".

И я нашел этот метод и попробовал его, но я не уверен если это хороший метод.

Это хороший метод для функции "запомнить меня"?

  1. Mysql таблица добавить
remember_token / VAR_CHAR 255
signin.blade. php

Я добавил это в signin.blade. php

<input type="checkbox" name="remember_token" id="remember_token"> 
<label style="position:relative; top: 5px;" for="remember">Remember me</label>

3. AcountController. php учетная запись

Я добавил это в AccountController. php

$remember_token = ($request->has('remember_token')) ? true : false;
        if($validator->fails()){
            return Redirect::route('account-sign-in')
                   ->withErrors($validator)
                   ->withInput();
        }else{

            $remember_token = ($request->has('remember_token')) ? true : false; // add

            $auth = Auth::attempt(array(
                'email'     => $request->input('email'),
                'password'  => $request->input('password'),
                'active'    => 1
            ),$remember_token); // add

            if($auth){
                return Redirect::intended('/');
            }else{
                return Redirect::route('account-sign-in')
                       ->with('global','Email/Password');
            }
        }
            return Redirect::route('account-sign-in')
                   ->with('global','Your account has not been activated');
    }

4 . AccountController. php регистрационная часть

Добавить "Remember_token => 0" в раздел регистрации

Мы добавили это так они не получат ошибку при регистрации

              $user= User::create(array(
                'email'    => $email,
                'username' => $username,
                'password' => \Hash::make($password),
                'code'     => $code,
                'active'   => 0,
                'remember_token' => 0
            ));

5. User. php

Я добавил Remember_token для пользователя. php

  protected $fillable = [
        'email','username','password','code','active','remember_token',
    ];

1 Ответ

0 голосов
/ 29 марта 2020

Как вы используете, это нормально, но вы также можете просто использовать это

  <input class="form-check-input" type="checkbox" name="remember" id="remember" {{ old('remember') ? 'checked' : '' }}>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...