PHP会话取消设置所有会话

时间:2016-04-12 12:58:00

标签: php session session-variables logout

我正在制作一个在线医生预约应用程序。

我有两个网站:

  • 一个患者网站,允许患者安排在医院(客户端)与医生预约

  • 医院网站,允许医生查看预约请求。

问题是如果我注销其中任何一个页面,所有页面都会注销。有什么问题?

医院网站退出脚本

<?php
    session_start();

    if (isset($_SESSION['hid'])) {
      session_unset();
      header("location: login.php");
    }
?>

客户端注销脚本

<?php
    session_start();

    if (isset($_SESSION['id'])) {
        session_unset();
        header("location: login.php");
    }
?>

2 个答案:

答案 0 :(得分:0)

您可以通过将值设置为false来取消设置会话。这样,它只会从一个网站注销。

医院网站退出脚本

<?php
    session_start();

    if (isset($_SESSION['hid'])) {
        $_SESSION['hid'] = 0;
        session_destroy();
        header("location: login.php");
    }
?>

客户端注销脚本

<?php
    session_start();

    if (isset($_SESSION['id'])) {
        $_SESSION['id'] = 0;
        session_destroy();
        header("location: login.php");
    }
?>

答案 1 :(得分:0)

session_unset()

之前添加session_destroy()
if (isset($_SESSION['id'])) {
    session_unset();
    session_destroy();    
    header("location: login.php");
}