php set session_set_cookie_params based on $_SESSION is it possible?

问题描述 投票:0回答:0

我想根据会话中保存的用户类型设置会话超时,例如

if (isset($_SESSION['userType'])) {
    if ($_SESSION['userType'] == '0') {
        session_set_cookie_params(1000, "/");
        $page = $_SERVER['PHP_SELF'];
        $sec = "1000";
        header("Refresh: $sec; url=$page");
    } else {
        session_set_cookie_params(5000, "/");
        $page = $_SERVER['PHP_SELF'];
        $sec = "5000";
        header("Refresh: $sec; url=$page");
    }
}
session_start();

我的问题是我无法在初始化之前访问 cookie,意思是 session_start();在开始。

所以我尝试将 2 session_start() 放在一个之前和一个之后(有人告诉我这应该会出错(它没有给我)但它不会覆盖它......而且我仍然有原始的 cookie 时间。 我尝试启动会话,让它进入 if,然后销毁它,然后再次创建它,但这对我不起作用。可能吗?

谢谢 :) 如果有评论或我遗漏了什么或有更好的方式来写问题让我知道,我会尽力解决它

php session session-cookies overwrite
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.