我已经在 index.php 中注册了一个会话并打印它。
$_SESSION['login'] = 'ok'; //print 'ok'
然后在 page1.php 得到这个会话并改变它。
<?$_SESSION['login'] = 'no';?>
setTimeout('window.location="index.php"', 100);
现在在 index.php 中仍然有 print 'ok'。怎么能?
我已经在 index.php 中注册了一个会话并打印它。
$_SESSION['login'] = 'ok'; //print 'ok'
然后在 page1.php 得到这个会话并改变它。
<?$_SESSION['login'] = 'no';?>
setTimeout('window.location="index.php"', 100);
现在在 index.php 中仍然有 print 'ok'。怎么能?
从你的评论来看,你session_start()
对吗?但让我们一步一步来:
因为您在 index.php 中没有任何条件,即使您在其他页面上设置它,它也会始终打印 'ok'
在每个脚本上,您需要包含以下代码行:
<?php session_start(); ?>
如果您不这样做,PHP 将不会保留$_SESSION
vars,它将默认为最初设置的任何内容。
要了解有关 PHP$_SESSION
变量的更多信息,请查看此处:PHP: session_start()