Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/274.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注销和会话问题_Php_Session - Fatal编程技术网

PHP注销和会话问题

PHP注销和会话问题,php,session,Php,Session,她的是我在logout.php上的注销脚本: 我的问题是在注销后,当我点击浏览器后退按钮时,我被重定向回index.php页面。index.php显示了一段时间,之后它被重定向到login.php。我不明白为什么它会重定向回index.php页面。我不想向用户显示任何页面/内容,即使是在用户注销后的一秒钟。好吧,您的用户将不得不用javascript加载该页面,javascript正在执行重定向。您需要的是在PHP中发出一个头,以立即强制重定向。但是,如果您已经输出了一个头文件,就不能再这样做了

她的是我在logout.php上的注销脚本:


我的问题是在注销后,当我点击浏览器后退按钮时,我被重定向回index.php页面。index.php显示了一段时间,之后它被重定向到login.php。我不明白为什么它会重定向回index.php页面。我不想向用户显示任何页面/内容,即使是在用户注销后的一秒钟。

好吧,您的用户将不得不用javascript加载该页面,javascript正在执行重定向。您需要的是在PHP中发出一个头,以立即强制重定向。但是,如果您已经输出了一个头文件,就不能再这样做了,所以您需要包含另一个PHP文件,其中包含要显示的输出,然后退出。通过Javascript执行此操作在window.location调用生效之前,总会有一个页面加载,许多使用弹出窗口阻止程序的人甚至可能无法正确执行Javascript重定向。

好吧,您的用户将不得不使用Javascript加载该页面,Javascript正在执行重定向。您需要的是在PHP中发出一个头,以立即强制重定向。但是,如果您已经输出了一个头文件,就不能再这样做了,所以您需要包含另一个PHP文件,其中包含要显示的输出,然后退出。通过Javascript执行时,在window.location调用生效之前,总会有一个页面加载,许多使用弹出窗口阻止程序的人甚至可能不会正确地遵循Javascript重定向。

不需要取消设置$\u会话['user']['id'];和会话_unset;。会话将完成所有任务。试试-

session_destroy();
header('location:logout.php');
exit;
不需要未设置的$_会话['user']['id'];和会话_unset;。会话将完成所有任务。试试-

session_destroy();
header('location:logout.php');
exit;

登录后检查每个页面上的条件

 if(!isset($_SESSION['user'] && !isset($_SESSION['user']['id'])){ 
    header('location:login.php') ;
 }

登录后检查每个页面上的条件

 if(!isset($_SESSION['user'] && !isset($_SESSION['user']['id'])){ 
    header('location:login.php') ;
 }
尝试使用

 header ("Location: login.php");
尝试使用

 header ("Location: login.php");