php缓存错误

php缓存错误,php,caching,http-caching,Php,Caching,Http Caching,我的控制面板中只有一页用户需要密码 进入 我这样做的顺序是: 转到带有参数的“密码请求页”我要访问的页 检查密码,如果正确,则用“哈希页面名称”填充会话变量 重定向到我要访问的页面 此页面检查“哈希会话”是否与此“页面名称”匹配 如果匹配,则清除会话并显示整个页面,如果不匹配,则重定向到初始页面 问题是:在第4步,页面有时会读取后期会话 更新。有时它没有显示任何价值,但很多时候它显示 正确的值,如果我刷新页面,会话仍然有 更正散列数据(在步骤5,如果匹配,我已经清除会话 变量),为什么 我尝试用

我的控制面板中只有一页用户需要密码 进入

我这样做的顺序是:

  • 转到带有参数的“密码请求页”我要访问的页
  • 检查密码,如果正确,则用“哈希页面名称”填充会话变量
  • 重定向到我要访问的页面
  • 此页面检查“哈希会话”是否与此“页面名称”匹配
  • 如果匹配,则清除会话并显示整个页面,如果不匹配,则重定向到初始页面
  • 问题是:在第4步,页面有时会读取后期会话 更新。有时它没有显示任何价值,但很多时候它显示 正确的值,如果我刷新页面,会话仍然有 更正散列数据(在步骤5,如果匹配,我已经清除会话 变量),为什么

    我尝试用mysql更改带有数据记录的会话变量,但是 我得到了同样的结果。phpmyadmin显示已设置的记录,但 该页面不显示任何数据集。否则,在删除记录后 页面仍然显示以前的记录值

    这是否意味着缓存有问题?我还做了头无缓存 例如:

        header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
        header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
        header('Cache-Control: no-store, no-cache, must-revalidate');
        header('Cache-Control: post-check=0, pre-check=0', false);
        header('Pragma: no-cache');
    
    但我还是得到了同样的结果。有什么建议吗


    更新:如果我一直刷新页面,在刷新3或5次之后,它会显示正确的值。如何做到实时?因此,如果会话已设置,则页面可以直接检查值集,如果会话已清除,则页面将询问密码。?

    在步骤4:打印($\u会话)中转储会话以查看是否已设置。如果没有,则在进行重定向之前,需要在步骤2中进行设置


    另外,不要忘记在每个文件上调用session_start()。

    甚至尝试查看调试控制台,查看您从何处读取的内容,您是否有代理?问题是什么,为什么页面无法显示session variable/mysql record value的当前值?顺序正确,在我的本地主机中工作。但是上传的结果不一样。尝试打印会话,它不会显示当前值。如果我签入mysql phpmyadmin,数据是正确的,但与页面结果不同。你能发布代码吗?尝试检查会话是否存在:echo session_id();-正如您所知,会话总是与cookie相对应,如果出于某种原因,最初没有设置cookie,则会话将不存在。这可能也有帮助:如果($PHPSESSID)打印“会话存在”;否则打印“会话不存在”;会话存在且具有值,但页面上显示的值与当前值不同。我在尝试使用mysql作为会话替换时发现了这个问题,当phpmyadmin已经显示“b”(新值)时,数据显示为“a”