【发布时间】:2015-08-10 21:35:23
【问题描述】:
PHP - How to send an array to another page?之前我环顾四周,但我的情况不同。
我在页面上有这个程序,这是查询块:
while ($row = sqlsrv_fetch_array($query))
{
$questions[] = "$row[Question]";
$optionA[] = "$row[OptionA]";
$optionB[] = "$row[OptionB]";
$optionC[] = "$row[OptionC]";
$optionD[] = "$row[OptionD]";
}
然后我做这样的事情来在屏幕上回显问题
$lengthquestion = count($questions);
$_SESSION['length'] = $lengthquestion;
for($i = 0; $i < $lengthquestion; $i++)
{
echo $questions[$i];
}
现在我希望能够在不同的 php 文件中访问这个问题数组。但是我对我一直在尝试的东西感到困惑/卡住的地方是我仍然需要访问下一页上数组的每个元素。我该怎么办?
到目前为止,我一直在玩会话,但后来出现数组到字符串转换错误。
第二个php页面:
$UpperLimit = $_SESSION['length'];
for($i = 0; $i < $UpperLimit; $i++)
{
}
【问题讨论】:
-
既然您已经在使用会话,为什么不将
$questions和选项数组添加到会话中? -
每次 $i 都可以不同。这是我尝试过但没有奏效的方法。所以也许我做错了。在我的第一页中,我有 $_SESSION['Questions'] = $questions;在我的第二页中,我有 $QUEST = $_SESSION['Questions'];
-
我在这里看不到大局,您可以再次运行查询。
-
是的,但那是我最后的手段。我运行的只是查询取决于不同的变量。所以,如果我不能做到这一点,那么我将运行查询。
-
为了将数组放入会话中,您需要
serialize()它,然后在要使用该数组的其他脚本中unserialize()它。
标签: php arrays sql-server