php – 会话无效
发布时间:2020-12-13 22:30:51 所属栏目:PHP教程 来源:网络整理
导读:所以我开发了一个基本站点,使用$_SESSION超全局变量进行登录. 所以代码基本上在检查登录详细信息后是有效的我将用户详细信息存储到会话中,如下所示: 注意我在存储这些值之前开始会话. $_SESSION['myusername'] = $myusername;$_SESSION['myuserid'] = $user
所以我开发了一个基本站点,使用$_SESSION超全局变量进行登录.
所以代码基本上在检查登录详细信息后是有效的我将用户详细信息存储到会话中,如下所示: 注意我在存储这些值之前开始会话. $_SESSION['myusername'] = $myusername; $_SESSION['myuserid'] = $userid; $_SESSION['logged_in'] = true; $_SESSION['mystatus'] = $res['user_status']; 这一切都很好,在我制作网站和测试等的整个过程中. 现在突然间,会话无法正常工作,显然用户登录后无法访问,因为该站点正在检查会话中不存在的数据. 在页面上我存储上面的数据,直接我可以使用这个: echo "username".$_SESSION['myusername']; echo "status".$_SESSION['mystatus']; 它在那里.但是当用户被定向到另一个页面并尝试: <?php session_start(); include ('functions.php'); echo "username".$_SESSION['myusername']; echo "status".$_SESSION['mystatus']; .... 值不在会话中.我已经检查过会话ID是否相同,就是这样. 这一直有效,所以我真的很困惑. 有人请帮忙. 编辑 请求标题&来自firebug的响应头(会话似乎为空的页面) Response Headersview source Date Sat,11 Jun 2011 15:18:48 GMT Server Apache/2.2.3 (Red Hat) X-Powered-By PHP/5.1.6 Expires Thu,19 Nov 1981 08:52:00 GMT Cache-Control no-store,no-cache,must-revalidate,post-check=0,pre-check=0 Pragma no-cache Content-Length 3772 Connection close Content-Type text/html; charset=UTF-8 Request Headersview source Host students.ee.port.ac.uk User-Agent Mozilla/5.0 (Windows; U; Windows NT 6.1; en-GB; rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10 Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language en-gb,en;q=0.5 Accept-Encoding gzip,deflate Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive 115 Connection keep-alive Cookie PHPSESSID=1jqqa2oeivq76h2vhtk4uflkv1 Authorization Basic ZWNlNzAxNDE6cGllczRtZTIy 解决方法
鉴于您在过去几周内没有更改任何内容以及以前的工作,您应该检查您的服务器是否没有用完磁盘空间.如果是这样,它可能会创建对会话的引用,但可能无法在呈现页面后将数据序列化到磁盘.
这可以解释为什么输出$_SESSION […]在同一页面上工作以及为什么在响应中设置cookie. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |