除了设置它们的页面之外,我无法在页面上使用会话变量,IOW 它们就像非会话变量一样。我在六个其他类似的论坛上发现了一个类似的问题,但在其他情况下的答案总是不适用。
这是我的文件:
sess1.php
<?php
session_start();
session_register("userid");
session_register("textvar");
$_SESSION['userid'] = 10333 ;
$_SESSION['textvar'] = TextVariable ;
echo "<p>User ID is: " . $_SESSION['userid'] . "</p>" ;
echo "<p>Another variable is: " . $_SESSION['textvar'] . "</p>" ;
?>
<p>Go to the <a href="sess2.php">next page</a>.</p>
并且, sess2.php
<?php
session_start();
echo "<p>The userid session variable is: " . $_SESSION['userid'] . "</p>";
echo "<p>The other session variable is: " . $_SESSION['newvar']. "</p> ";
?>
每种情况下的浏览器输出为:
sess1.php
用户 ID 为:10333
另一个变量是:TextVariable
转到[下一页]。
并且, sess2.php
userid 会话变量是:
另一个会话变量是:
转到[最后一页]。
有几件事不是:
- 我确实在两个文件的顶部都有 session_start() 。
- 变量目录是可写的,会话变量显示在那里。(我有大约一百个名为 sess_b62 的小文件,里面有这个:'userid|i:10333;textvar|s:12:"TextVariable";'。)
- phpinfo() 告诉我 php.ini 文件被正确读取,并且生命周期设置为默认值 0,即直到浏览器关闭。
我无计可施。有什么建议么?
非常感谢。