Php 如何记住正在登录的用户

Php 如何记住正在登录的用户,php,laravel,Php,Laravel,我已经创建了一个带有“记住我”复选框的登录表单。我想知道如何允许用户在关闭浏览器时保持登录,或允许用户在关闭浏览器时注销。一个示例代码会很好,谢谢 这是我的密码 类HomeController扩展了BaseController{ public function getIndex() { if(Auth::check()) { return Redirect::to('profile'); } ret

我已经创建了一个带有“记住我”复选框的登录表单。我想知道如何允许用户在关闭浏览器时保持登录,或允许用户在关闭浏览器时注销。一个示例代码会很好,谢谢

这是我的密码

类HomeController扩展了BaseController{

public function getIndex()
 {    

     if(Auth::check())
         {
              return Redirect::to('profile');
         }

    return View::make('index');
}


}

您只需在登录方法中打开它:

if (Auth::attempt(array('email' => $email, 'password' => $password), true))
{
    // The user will now be logged in and remembered
}
else
{
   // Raise a login error
}
此“true”参数用于记住您的用户

以下是Laravel Auth::true()方法声明:

public function attempt(array $credentials = array(), $remember = false, $login = true)
{
  ...
}

您可以在用户浏览器上设置cookie(确保告诉他们您是否需要),以识别他们。但请注意,恶意用户可能会修改此内容。

您需要理解cookies:我将其设置为false以不记得用户,但它不起作用。我将第二个参数设置为false,然后登录到我的个人资料页面。然后,我关闭了浏览器,打开了浏览器,进入了配置文件路径,我仍然在登录。我不明白我做错了什么。这应该是可行的,在这种情况下更糟糕的是你的用户被困在Laravel cookie/会话中,但你清除了它们并关闭了浏览器,所以你基本上是说Laravel 4中有一个bug?!:)嗯,当我清除浏览器cookie并尝试访问配置文件时,它会将我重定向到登录页面。我登录到我的配置文件并关闭浏览器,但当我启动浏览器时,我仍在登录您使用的会话驱动程序是什么?如果为本机,则从“应用程序/存储/会话”中删除所有文件。
public function attempt(array $credentials = array(), $remember = false, $login = true)
{
  ...
}