【问题标题】:Session vars and IE8会话变量和 IE8
【发布时间】:2013-12-15 17:45:43
【问题描述】:

我正在尝试使用 PHP 设置会话变量,该变量用于设置在 PHP 中预加载的选择框值。我的会话代码是:

session_start();

echo "test";
echo $_SESSION['accountMain']; //For session test

if(isset($_POST["accountMain"]))
{
    $account = $_POST["accountMain"];
    $_SESSION['accountMain'] = $account;
    session_write_close();
}
else if(isset($_SESSION['accountMain']))
     {
        $account = $_SESSION['accountMain'];
     }
     else
     {
        $account = "AMX";
     }

在 Chrome 和 Firefox 上一切都很好,我可以看到 $_SESSION['accountMain'] 正在打印并且选择框正在由会话变量设置。但是在 IE8 上,会话变量没有被打印出来。

我浏览了整个网络领域,找到了一些关于它的信息,并在此基础上进行了以下更改:

首先,我更改了我的网页文件名并从中删除了_,因为我读到它会导致 IE8 和会话出现问题。

其次,我已将此添加到我的代码中:

<?php
header('P3P: CP="IDC DSP COR CURa ADMa OUR IND PHY ONL COM STA"');
?>

我还添加了session_write_close();

在我的 IE8 安全设置中,我已取消选中所有区域的 已启用保护模式,并且在 隐私设置中我设置为始终允许会话 cookie并接受所有来源的 cookie。

但是,会话变量仍然没有被打印出来。

我错过了什么?

【问题讨论】:

  • 我认为你应该试试这个并检查你的浏览器 echo 'Testing '.$_SESSION['accountMain'];
  • 检查这是否对您有帮助 stackoverflow.com/questions/7209257/…
  • @TasosBitsios 谢谢,但也没有用:(
  • 以某种方式检查您的 cookie...如果您没有调试工具,像 alert(document.cookie); 这样的 javascript sn-p 就可以了
  • @TasosBitsios 我在 IE8 上一无所获。在 Chrom 上,我确实收到了 PHPSESSID

标签: php internet-explorer session internet-explorer-8


【解决方案1】:

您需要检查您是否在 IE8 中启用了 cookie。

【讨论】:

  • 我的问题中没有提到其他检查吗?
猜你喜欢
  • 2011-04-09
  • 1970-01-01
  • 2013-03-10
  • 2010-09-12
  • 2012-12-12
  • 1970-01-01
  • 1970-01-01
  • 2012-04-30
  • 1970-01-01
相关资源
最近更新 更多