0

我有一个关于会话的问题。为了简短起见,我有一个登录页面,它将电子邮件的 POST 值存储在会话变量中。我使用这个会话来检查用户是否有进入特定页面的权限。我还有一个注销页面,它会破坏会话并将用户重定向到登录页面。这就是我的问题发生的地方。当我通过在浏览器的地址栏中输入 URL 进入我的注销页面时,会话被破坏并且我被成功重定向回登录页面。但是,当我使用 href 标记创建指向注销页面的链接并单击该链接时,我确实会被重定向,但是会话不会被破坏。这真的让我很困惑。我确定在任何页面上都没有忘记 session_start() 等。有没有人有任何想法?

我想附上一些代码会有所帮助:

基本上,这是我的注销页面:

<?php
session_start();
session_unset();
session_destroy();
header("Location: http://www.example.com/login");
?>

这是您可以转到注销页面的页面中的代码的一部分:

<a href="http://example.com/logout/index.php">Click here to logout!</a>

如果您需要更多代码或任何内容,请告诉我。

提前感谢。

/C

4

2 回答 2

0

这是我使用的代码,我所有的注销应用程序。

session_start();
session_destroy();
header("Location: index.php"); 

这是销毁会话的最简单的代码。但为什么你的代码不起作用?

于 2013-02-27T12:46:50.430 回答
0

您正在从wwwto移动,non-www因此您的会话在其中一个中被终止,而不是另一个。只需使用其中一个wwwnon-www两者都不要。

于 2013-02-28T05:14:32.807 回答