1

我是一名学生,我是 php 新手

我正在做我的项目

我的网站(本地主机)中有两个面板,一个是用户,另一个是管理员

在这两个面板中,我已经在所有页面上创建了会话

在用户面板上:

session_start();
if(!isset($_SESSION['user']))
   header("Location: index.php");

在管理面板上:

session_start();
if(!isset($_SESSION['username']))
{
   header("Location: login.php?e=please+login+first");
}

现在我已经打开了两个面板,问题是如果我从一个面板注销,那么其他面板也会注销。

例如,如果我以用户身份在用户面板中注销,那么当我刷新管理页面时,我的管理面板会话会自动将页面重定向到 login.php

有什么办法可以避免这种情况或如何避免这种情况..请帮助我。我会很感激

here is my logout code

for admin side

<?php
session_start(); 
session_destroy();
header("Location: login.php?e=Logout+successfully");
?>

for user side
<?php
session_start();
session_destroy();
header("Location: index.php?l=Logout+successfully");
}
?>
4

3 回答 3

4

不销毁会话,只取消设置相应的密钥

unset($_SESSION['user'])

于 2012-05-09T18:58:15.940 回答
1

如果使用session_destroy(),它将破坏会话 cookie id。销毁变量将是使用 PHPunset()函数的更好方法,并且您不会丢失所有会话 cookie。

于 2012-05-09T19:00:01.847 回答
1

您不能在同一台电脑的同一浏览器中同时使用两个面板登录。而且您也不可能一次登录一个面板..当您无法在同一浏览器中的同一台电脑上打开两个面板时,您的此问题将自动解决...

于 2012-05-09T19:39:52.550 回答