相关疑难解决方法(0)

(PHP)如何正确销毁会话cookie?

我正在尝试正确退出管理员用户.这是我的功能:

function logout()
{
    $_SESSION = array(); //destroy all of the session variables
    if (ini_get("session.use_cookies")) {
        $params = session_get_cookie_params();
        setcookie(session_name(), '', time() - 42000,
            $params["path"], $params["domain"],
            $params["secure"], $params["httponly"]
        );
    }
    session_destroy();
}
Run Code Online (Sandbox Code Playgroud)

基本上,一旦我验证密码,我将会话设置为有效(总共只有1个用户).现在,当管理员命中注销时,我想销毁当前会话,并且还销毁cookie,这样他们就不能只使用浏览器中存储的会话cookie返回管理页面.但我的代码不起作用.我点击退出,我可以直接导航回管理页面.但是,如果我删除我的cookie,功能是完美的.那么这里的cookie删除功能有什么问题?

php cookies session

17
推荐指数
2
解决办法
7万
查看次数

PHP session_set_cookie_params()问题

对于我登录部分的每个页面的标题,我添加了以下代码来维护会话:

session_set_cookie_params(1200, '/mysystem');
session_start();
Run Code Online (Sandbox Code Playgroud)

我的意图是,我/mysystem通过函数session_set_cookie_params()将会话生命周期设置为1200秒.使用此函数的原因是将会话cookie与同一域中的其他PHP脚本分开,例如http://www.example.com/another_system/

问题是,无论是否有活动(例如加载其他页面/mysystem或刷新页面),会话都会在达到1200秒时到期.

预期行为:会话"倒计时"在活动会话有效时进行页面活动时重置.

我错过了什么 ?

php

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

php ×2

cookies ×1

session ×1