【发布时间】:2014-03-16 16:41:54
【问题描述】:
我有关于session_id() 的问题是每次页面刷新都会改变。
其实我在用session的这个功能:
function sec_session_start()
{
$session_name = 'sec_session_id';
$secure = false;
$httponly = true;
ini_set('session.use_only_cookies', 1);
$cookieParams = session_get_cookie_params();
session_set_cookie_params($cookieParams["lifetime"], $cookieParams["path"], $cookieParams["domain"],
$secure, $httponly);
session_name($session_name);
session_start();
session_regenerate_id(false);
}
在我使用的每个页面上
include "function.php";
sec_session_start();
所以我怀疑这个功能,因为如果我只使用session_start();,session_id() 不会改变。它保持不变,但是如果我从该函数sec_session_start() 调用会话,session_id() 会发生变化。
该功能有什么问题?我找不到出了什么问题。我所有的网站都在使用sec_session_start(),所以我无法更改为session_start()。
非常感谢任何帮助。谢谢。
【问题讨论】:
-
session_regenerate_id() 生成新的会话 ID,因为它的目的。
-
False 只是为了不删除旧的会话文件。它的职责是创建一个新的会话 ID。
-
no , false 不重新生成新的id。
-
我的意思是。如果使用 false,那么您的会话变量将被保留,但会话 I 仍将被更改。
-
是的,它使用了 false 并且无论如何都改变了,这就是我的问题