Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP会话变量在关闭Firefox后保持设置_Php_Mysql - Fatal编程技术网

PHP会话变量在关闭Firefox后保持设置

PHP会话变量在关闭Firefox后保持设置,php,mysql,Php,Mysql,可能重复: 我正在创建一个网站,用户只有在登录时才能查看某些页面。为了实现这一点,我检查是否设置了$_SESSION['uid'],如果未设置,则将用户发送回主页,而不是私人页面。但是,在用户关闭浏览器后,$\u会话['uid']将保持设置状态,因此允许用户查看专用页,而无需再次登录。为什么会这样?为什么$\u SESSION['uid']变量在浏览器会话中保持设置?该网站在Chrome中正常工作,但在FF中无法正常工作 您可以尝试更改PHP设置以强制过期时间: ini_set('sessio

可能重复:


我正在创建一个网站,用户只有在登录时才能查看某些页面。为了实现这一点,我检查是否设置了$_SESSION['uid'],如果未设置,则将用户发送回主页,而不是私人页面。但是,在用户关闭浏览器后,$\u会话['uid']将保持设置状态,因此允许用户查看专用页,而无需再次登录。为什么会这样?为什么$\u SESSION['uid']变量在浏览器会话中保持设置?该网站在Chrome中正常工作,但在FF中无法正常工作

您可以尝试更改PHP设置以强制过期时间:

ini_set('session.cookie_lifetime', 0);
ini_set("session.cache_expire", 0);
这也可以起作用(当您关闭浏览器时,cookie会自动过期):


这是Firefox中一个已知的“bug”(如果是可配置的功能,我不同意,他们会调用),它将Cookie保留为0。您只能希望会话在某个时刻被垃圾收集器删除。另见:FWIW,Chrome也有这种可怕的错误功能,从18版左右开始。。。
ini_set('session.use_only_cookies', 0);