无法在PHP中销毁会话和cookie

时间:2014-04-11 04:22:34

标签: php session cookies session-cookies logout

目前我正在使用以下代码将用户注销。

session_start();    
setcookie("u", "", time() - 999999);
setcookie("i", "", time() - 999999);
setcookie(session_name(),"",time()-999999);
session_destroy();

$_COOKIE['u']$_COOKIE['i']用于自动登录用户。

我的问题是,当我将此注销文件直接放在网络目录下(即www/)时,它的效果非常好。但是,当我将它放在辅助目录(即www/includes/)中或将这些代码与其他PHP页面(即更改密码然后登录用户)组合在includes文件夹中时,用户无法登录成功了。

1 个答案:

答案 0 :(得分:0)

您的Cookie似乎设置在不同的路径上。第4个参数是域路径,第5个是域。

bool setcookie ( string $name [, string $value [, int $expire = 0 [, string $path [, string $domain [, bool $secure = false [, bool $httponly = false ]]]]]] )

请参阅http://www.php.net/manual/en/function.setcookie.php

在使用Cookie时明确设置这些内容是个好主意。