как сделать опцию входа" Запомни меня " в laravel?

как сделать опцию входа" Запомни меня " в laravel?

24.04.2014 11:46:51 Просмотров 48 Источник

поэтому я работаю над тем, чтобы, когда я устанавливаю флажок Запомнить меня, пользователь при выходе из формы (имя пользователя и пароль) запоминал данные пользователя следующим образом : enter image description here

так вот это мой код он не работает :(

// create our user data for the authentication
        $userdata = array(
                'email'     => Input::get('email'),
                'password'  => Input::get('password')
        );

        // attempt to do the login
        if (Auth::attempt($userdata, true)) {

            Session::flash('message', array('body'=>trans('login-signup.welcome'), 'type'=>'success'));
            return Redirect::to('/');

    }
У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/23278404/how-to-do-remember-me-login-option-in-laravel#comment35628987_23278404
Используя Auth - вы убедились ,что у пользователей таблицы есть столбец 'remember_me' для маркера?

Ответы - как сделать опцию входа" Запомни меня " в laravel? / how to do "remember me" login option in laravel?

Othman

24.04.2014 11:49:58

использовать cookies

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

Создавать:

$response->withCookie(Cookie::make('name', 'value', $minutes));

Возвращать

$value = Cookie::get('name');

Ваш вопрос заключается в том, чтобы не запоминать логин пользователя.. Вопрос в том, как заполнить входные данные на основе сохраненной информации auth. Это можно сделать, если при загрузке страницы напечатать значения проверки подлинности в атрибуте input value.

личиночная печеньки документы

Также у Laravel есть своя собственная реализация "Remember Me"

if (Auth::attempt(array('email' => $email, 'password' => $password), true))
{
// The user is being remembered...
}

if (Auth::viaRemember())
{
//
}

Дополнительные сведения о "проверке подлинности пользователя и "запоминании" их"

Rahul Tathod

22.02.2016 09:46:43

public function validate() 
{
    // set the remember me cookie if the user check the box
    $remember = (Input::has('remember')) ? true : false;

    // attempt to do the login
    $auth = Auth::attempt(
        [
            'username'  => strtolower(Input::get('username')),
            'password'  => Input::get('password')    
        ], $remember
    );
    if ($ auth) {
        return Redirect::to('home');
    } else {
        // validation not successful, send back to form 
        return Redirect::to('/')
            ->with Input(Input::except('password'))
            ->with('flash_notice', 'Your username/password combination was incorrect.');
    }

}
Mike Thrussell

05.02.2017 08:45:51

$remember = true;
Auth::login($user, $remember);
Kiran Maniya

24.12.2019 09:46:20

Вы можете запомнить логин, установив Cookie. Файл cookie будет храниться в памяти браузера. это небольшой фрагмент данных, отправленных с веб-сайта и хранящихся в веб-браузере пользователя во время просмотра конкретного веб-сайта. Каждый раз, когда пользователь загружает веб-сайт, браузер отправляет файл cookie обратно на сервер, чтобы уведомить веб-сайт о предыдущей активности пользователя. В Laravel вы можете установить cookie как,

$response->withCookie(Cookie::make('COOKIE_NAME', 'COOKIE_VALUE', $minutes));
//or
back()->->withCookie(Cookie::make('COOKIE_NAME', 'COOKIE_VALUE', $minutes))

если вы хотите установить cookie из middleware, вот как это сделать

public function handle($request, Closure $next){
    $response = $next($request);
    $response->withCookie(Cookie::make('COOKIE_NAME', 'COOKIE_VALUE', $minutes))
}

Вы можете либо создать/извлечь файл cookie с помощью Illuminate\Support\Facades\Cookie\Faces\Cookie, либо воспользоваться вспомогательной функцией laravel global cookie().

Чтобы получить файл cookie,

$value = Cookie::get('COOKIE_NAME');
//or
$request->cookie('COOKIE_NAME')

Помните, что Laravel шифрует файлы cookie по умолчанию. Промежуточное EncryptCookiesобеспечение EncryptCookies отвечает за шифрование файлов cookie. Вы получите nullпри извлечении таких файлов cookie. Отключение / удаление EncryptCookies

Закрыть X