php怎么利用SESSION在两个不同窗口间传递数据?

来源:百度知道 编辑:UC知道 时间:2024/05/28 16:14:43
给个具体的实例。
比如一个页面对一个变量进行赋值,存入SESSION,
关闭此窗口,打开新窗口,执行另一页面,怎么获取上个变量的值?
测试了一下,不可以。
t2.php
<?php
session_start();
if (!isset($_SESSION['count'])) {
$_SESSION['count'] = 0;
} else {
$_SESSION['count']++;
}
//可以一个文件中赋值
$_SESSION['count']=123;
//在这个文件,或者另外一个文件中显示
echo $_SESSION['count'];
?>
执行显示123
t3.php
<?php
session_start();
echo $_SESSION['count'];

?>
如不关闭t2.php窗口
在本窗口t3.php或则另开新窗口执行t3.php,则显示123
如关闭t2.php窗口 ,再开一个窗口t3.php.则显示
Notice: Undefined index: count in F:\php\htdocs\t3.php on line 3

是不是和cookie的设置什么的有关系??

那有些网站的登录信息时怎么记录的?

比如一些论坛可以设置登录1个月有效,

这次登陆后没有退出,

第二天开机再进这个论坛,登录状态还在,

不是用cookie保存的??

两个窗口的代码类似这样:

<?php
session_start();
if (!isset($_SESSION['count'])) {
$_SESSION['count'] = 0;
} else {
$_SESSION['count']++;
}
//可以一个文件中赋值
$_SESSION['count']=123;
//在这个文件,或者另外一个文件中显示
echo $_SESSION['count'];
?>

补充:
窗口是不能关闭的,至少不能关完,SESSION需要COOKIE支持,窗口一关COOKIE就没了。一般是在一个窗口工作,可以不断的切换文件,如果多个窗口的话,往往是使用FRAME框架。

两个窗口的代码类似这样:

<?php
session_start();
if (!isset($_SESSION['count'])) {
$_SESSION['count'] = 0;
} else {
$_SESSION['count']++;
}
//可以一个文件中赋值
$_SESSION['count']=123;
//在这个文件,或者另外一个文件中显示
echo $_SESSION['count'];
?>
SESSION手册上的解释里面有一句是:本页面有效。所以窗口是不能关闭的,至少不能关完,SESSION需要COOKIE支持,窗口一关COOKIE就没了。一般是在一个窗口工作,可以不断的切换文件,如果多个窗口的话,往往是使用FRAME框架。