0

我有以下问题。我之前使用的是 php 会话,但没有遇到这个问题。我尝试使用 $_SESSION 传递变量。一切都很好,直到我添加了一些新的变量。

我在page1.php中有这段代码:

... 
if($count==1){
$row=mysql_fetch_array($result);
$_SESSION = array();
$_SESSION['myusername']=$myusername;
$_SESSION['mypassword']=$mypassword;
$_SESSION['firstname']="someteststring"; //new added variable
$_SESSION['lastname']="someteststring"; //new added variable
?>
<script> // i put this following script just because i wanted
         // to see whats in session variables
    console.log(<?php echo json_encode($_SESSION); ?>);
</script>
<?
header("location:page2.php");
session_write_close();
...

在此之后,我可以在 firebug 控制台中看到所有变量 - 当标题函数被注释时:

firstname   "someteststring"
lastname    "someteststring"
mypassword  "password"
myusername  "username"

标头重定向(page2.php)之后,我只能看到两个旧变量:

mypassword  "password"
myusername  "username"

page2.php如下

<?php
session_start();
if(!(isset($_SESSION['myusername']))){
header("location:index.php");
}
echo $_SESSION['myusername'];
echo $_SESSION['mypassword'];
echo $_SESSION['lastname'];
echo $_SESSION['firstname'];
?>

请注意,我还删除了浏览器中缓存的内容,以及 cookie。请问有人可以帮我吗?也许我忘记了什么。

谢谢你。

4

0 回答 0