当前位置:  开发笔记 > 编程语言 > 正文

PHP会话变量未保留

如何解决《PHP会话变量未保留》经验,为你挑选了1个好方法。

我无法在设置它们的页面上使用会话变量,它们就像非会话变量一样.我在其他六个类似的论坛上发现了一个类似的问题,但在其他案例中的答案总是不适用.

这是我的文件:

sess1.php

User ID is: " . $_SESSION['userid'] . "

" ; echo "

Another variable is: " . $_SESSION['textvar'] . "

" ; ?>

Go to the next page.

并且, sess2.php

The userid session variable is: " . $_SESSION['userid'] . "

"; echo "

The other session variable is: " . $_SESSION['newvar']. "

"; ?>

每种情况下的浏览器输出是:

sess1.php

用户ID是:10333

另一个变量是:TextVariable

转到[下一页].

并且, sess2.php

userid会话变量是:

另一个会话变量是:

转到[最后一页].

有些事情不是:

我在两个文件的顶部都有session_start().

变量目录是可写的,并且会话变量显示在那里.(我有大约一百个名为sess_b62的小文件,里面有这个:'userid | i:10333; textvar | s:12:"TextVariable";'.)

phpinfo()告诉我正在正确读取php.ini文件,并将生命周期设置为默认值0,即直到浏览器关闭.

我的智慧结束了.有什么建议?

非常感谢.



1> jonstjohn..:

session_register()不是必需的,可能会导致问题.阅读文档session_register()- 它旨在使用现有变量分配会话变量.

从这里:

好吧,session_register()告诉PHP应该将某个全局变量视为会话变量.这意味着在脚本执行结束时(通常发生会话数据写入时),将使用当前启用的会话处理程序写入该全局变量的结果值.

我认为这是您遇到的问题.在脚本执行结束时,会话变量被覆盖.

推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有