在php中注销后会话不会破坏

时间:2013-02-27 03:54:13

标签: php

我有很多研究,我还没有找到解决问题的方法。我为用户登出链接以注销用户,然后重定向到登录页面。问题是,当用户被重定向时,它仍然登录。这是我注销用户的代码。

session_start();
  $_SESSION = array(); //destroy all of the session variables
  unset($_SESSION['valid']);
  unset($_SESSION['userid']);
  unset($_SESSION['username']);
  session_destroy();
  Header("Location:login.php");
  exit;
}

2 个答案:

答案 0 :(得分:1)

确保登录和注销页面的子域都相同

因为会话的cookie默认是基于域的,除非你改变它。

session_set_cookie_params ( int $lifetime [, string $path [, string $domain [, bool $secure = false [, bool $httponly = false ]]]] )

答案 1 :(得分:0)

我遇到了类似的问题,是的,我发现我的饼干已经设定; 所以简单地添加以下代码帮助我摆脱它:

if(isset($_COOKIE[session_name()])):
setcookie(session_name(), '', time()-7000000, '/');

ENDIF;