我有以下问题。我之前使用的是 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。请问有人可以帮我吗?也许我忘记了什么。
谢谢你。