因此,我試圖在我的laravel應用程序的登錄過程中創建'記住我'功能。我創建了電子郵件,密碼一種基本形式,並記住我複選框作爲輸入,就可以看到下面:laravel中的'記住我'功能的困難
<div class="col-xs-0 col-sm-6 col-md-6 col-md-offset-3 col-sm-offset-3 col-cs-offset-5" id="content">
{{ Form::open(['route' => 'sessions.store']) }}
<div>
{{ Form::label('email', 'Email:') }}
{{ Form::email('email') }}
</div>
<div>
{{ Form::label('password', 'Password:') }}
{{ Form::password('password') }}
</div>
<div>
{{ Form::label('remember', 'Remember me:') }}
{{ Form::checkbox('remember', 'Remember-me') }}
</div>
<div>{{ Form::submit('login') }}</div>
{{ Form::close() }}
</div>
這個帖子下面的功能。但是現在發生的是,用戶是總是使用true
參數登錄。我究竟做錯了什麼?
public function store()
{
$email = Input::get('email');
$password = Input::get('password');
$remember = Input::get('remember');
if ($remember == 'Remember-me') {
if (Auth::attempt(array('email' => $email, 'password' => $password), true))
{
return Redirect::intended('/');
}
return Redirect::back()->withInput();
} else {
if (Auth::attempt(array('email' => $email, 'password' => $password)))
{
return Redirect::intended('/');
}
return Redirect::back()->withInput();
}
}
它是如何知道用戶被記住的?你在看會議,餅乾還是別的地方? – Elin 2014-08-31 15:42:36
通過手動測試。選中複選框登錄,關閉瀏覽器,然後重新打開頁面。沒有勾選複選框,行爲沒有變化。 – User183849481 2014-08-31 16:30:10
從閱讀「類似問題」,這是因爲會議不是記住我。關閉瀏覽器不會結束你的會話(這在所有其他問題中都很清楚)。確保你實際註銷並檢查以確保會話被銷燬。 – Elin 2014-08-31 16:38:57