【发布时间】:2011-05-23 12:13:14
【问题描述】:
session_start();
//If user was logged in then returns true,
//if user was NOT logged in then it returns false;
//except on ie8 this returns ALWAYS false, and never true
var_dump($this->user->is_logged_in());
$_POST['username'] = 'test';//username = test
$_POST['password'] = 'test';//pass = test
var_dump($this->user->login());//bool //true/
var_dump($this->user->is_logged_in());//bool true
die();
这就是我在脚本上调试脚本并找出问题所在... 问题在于,在“仅限 ie8”上,会话似乎并没有留下来,并且总是在每次请求时不断删除。
我还应该提到b4这个代码有ob_start()
这让我发疯:(帮助任何人? 如果需要更多信息,我会添加它们。
【问题讨论】:
-
这有关系吗? stackoverflow.com/questions/794243/… 另外,这只是IE 8中的情况,还是其他版本也会出现这种情况?
-
仅限 ie8,我检查了 ie6、ie7、ie9 都很好,ff 3.6 + 和 chrome 它工作正常,除了 ie8 有自己的想法
-
只是阅读您上面的链接他们的意思是
$_SESSION['_bla_bla'] = 'Hello';不允许在 ie8 上使用吗?因为下划线? -
@Val:不,这意味着如果你有例如
http://test_domain.example.com/yourscript.php,然后下划线 在域名中 将导致 cookie 未保存(因此会话未保存)。然而,这在每个 IE 中都会发生,至少从版本 6 及更高版本开始。 -
哦,好吧,那么在这种情况下,这不是问题,域名是这样的。 "www.domain.name.sch.uk"
标签: php session internet-explorer-8