我尝试将变量从一个页面传递到另一个页面,但是虽然我检查了多个错误,但我无法找到第二页(page1.php
,page.2.php
的原因或page3.php
,取决于变量)不会从第一页(intro.php
)收到变量。
有人可以帮助我吗?
这是intro.php
:
<?php
session_start();
$pageorder = array("page1", "page2", "page3", "page4");
shuffle($pageorder);
$_SESSION['intro']= $pageorder[0];
$_SESSION['echo ($pageorder[0])']= $pageorder[1];
$_SESSION['echo ($pageorder[1])']= $pageorder[2];
$_SESSION['echo ($pageorder[2])']= $pageorder[3];
?>
和html以下确定下一页(工作正常):
<input type=hidden name="nextURL" value="<?php echo($pageorder[0])?>.php">
这是page1.php
,如果page1.php
被选为第一个(page2.php
,等等):
<?php
session_start();
$page1 = $_SESSION['page1'];
?>
并再次在html下面确定下一页:
<input type=hidden name="nextURL" value="<?php echo ($page1) ?>.php">
不知怎的,它只是没有收到任何东西,所以$ page1是空的。
有人看到问题所在吗?
提前多多感谢!
答案 0 :(得分:1)
您没有在第一个脚本中正确设置会话
<?php
session_start();
$pageorder = array("page1", "page2", "page3", "page4");
shuffle($pageorder);
$_SESSION['intro']= $pageorder[0];
$_SESSION[$pageorder[0]]= $pageorder[1];
$_SESSION[$pageorder[1]]= $pageorder[2];
$_SESSION[$pageorder[2]]= $pageorder[3];
?>
并且您将数据放在查看结果的位置是隐藏的,因此删除隐藏的属性并且幸运的话一切都会很好
<input type=hidden name="nextURL" value="<?php echo ($page1) ?>.php">
更改为
<input name="nextURL" value="<?php echo ($page1) ?>.php">