结束PHPSESSID cookie会话

时间:2013-09-10 04:52:06

标签: php cookies

我正在结束会话cookie。无论何时登录和注销,浏览器仍会显示“PHPSESSID”。

以下是我以前构建的php文件的网址。我试过“Chrome和Firefox”,但仍然存在同样的问题。 我知道这是一个很大的帮助请求,但是我会非常喜欢它。

文件位于源文件夹中,包含以下文件。 FG-membersite.php membersite_config.php

https://github.com/simfatic/RegistrationForm/tree/master/source

5 个答案:

答案 0 :(得分:2)

您必须在https://github.com/simfatic/RegistrationForm/blob/master/source/include/fg_membersite.php中取消设置会话cookie,功能注销

你可以这样做

<?php
// Initialize the session.
// If you are using session_name("something"), don't forget it now!
session_start();

// Unset all of the session variables.
$_SESSION = array();

// If it's desired to kill the session, also delete the session cookie.
// Note: This will destroy the session, and not just the session data!
if (ini_get("session.use_cookies")) {
    $params = session_get_cookie_params();
    setcookie(session_name(), '', time() - 42000,
        $params["path"], $params["domain"],
        $params["secure"], $params["httponly"]
    );
}

// Finally, destroy the session.
session_destroy();
?>

http://php.net/manual/en/function.session-destroy.php获取的代码示例。您可以在php.net中找到更多信息

答案 1 :(得分:0)

在您的退出功能中尝试关注

session_unset();
session_destroy();

答案 2 :(得分:0)

  1. 文件位于&#34; include&#34; &#34;来源&#34;内的文件夹文件夹

  2. PHPSESSID不一定有登录/注销的东西,它只是处理会话。

  3. 正如您在此处所见(https://github.com/simfatic/RegistrationForm/blob/master/source/include/fg_membersite.php,从第172行开始):

    function LogOut()
    {
        session_start();        
        $sessionvar = $this->GetLoginSessionVar();        
        $_SESSION[$sessionvar]=NULL;        
        unset($_SESSION[$sessionvar]);
    }
    

    此代码不会破坏会话,只是取消设置$ _SESSION数组中的变量。你可以用

    http://de2.php.net/manual/en/function.session-unset.php

    接着是

    http://de2.php.net/manual/en/function.session-destroy.php

    为此或只是检查是否设置了$ _SESSION [$ sessionvar]并包含有效信息以查看用户是否已登录。这样就可以保留可能包含其他有价值信息的会话。

答案 3 :(得分:0)

对不起我以前的低质量答案

答案 4 :(得分:0)

您可以使用下面的脚本轻松地在客户端执行此操作 (您可能需要更改路径和主机的值)

document.cookie = "PHPSESSID=; expires=Thu, 01 Jan 1970 00:00:00 UTC;path=/;host=localhost";