PHP:$ _SESSION永远不会被设置,但$ _POST是?

[@ downvote和白痴言论,打败人们并不酷。我甚至在问了这个问题之前,整整重新检查了文件和coursenotes 3天。 正如詹姆斯所做的那样,关闭这一点以防止白痴的合唱与无用的和事实上不正确的评论一起堆积。感谢Charles和Brent B的帮助。 事实证明这不是Safari问题所以我删除了那些标签。] $ _SESSION没有在Safari中设置,因此我的多页形式中断了。 $ _POST,$ _REQUEST确实设置(但后来的页面显然会消失)。 版本是PHP:5.3.1,Safari 5。 救命!这不是以下任何一个问题,我检查了所有问题,并阅读了所有其他相关问题: session_start()有效。 SID / PHPSESSID保留在页面之间。 session.use_cookies = 1,session.use_only_cookies = 1 我检查了php.ini并相信它没问题 我确实将Safari配置为接受所有cookie(暂时)。没有不同。 我可以手动设置$ _SESSION ['debug']并确保跨页保留(并且会话文件被正确写出)。除非我这样做,否则$ _SESSION永远不会被定义。 我没有时间调试这个废话,所以以下哪个最后解决方法是最难看的? (这是一个编程任务,而不是生产代码) 根据课程说明,$ _SESSION应该合并$ _POST,$ _REQUEST,$ _GET,session和globals吧? 手动执行$ _SESSION = array_merge($ _ SESSION,$ _ POST); [这个作品] 使用隐藏表单在后续表单上重新发布$ _POST 其他? (更广泛的说明,如果在Safari(5)上简单地认为PHP被破坏了吗?)     
已邀请:
$ _SESSION不合并其他超级全局数组,它是它自己的数组。 $ _REQUEST是$ _POST和$ _GET的合并,但就是这样。根据您的描述,$ _SESSION正常运行。阅读官方手册。 http://www.php.net/manual/en/language.variables.superglobals.php     

要回复问题请先登录注册