在php中通过几个页面传递变量/数组

时间:2012-11-01 05:26:28

标签: php arrays variables foreach parameter-passing

我的代码以多个php数组开头,XML数据通过以下方式传递多个复选框($ i循环遍历XML文档中的项目,值传递选定的第i行中的特定数据):

$MoneyLine = $event->periods->period[0]->moneyline; //background info
$AwayMoneyLine[] = $MoneyLine->moneyline_visiting;  //background info
<input type='checkbox' name='AwayMoneyLine'   value='$Date[$i];$AwayRotNum[$i];$AwayParticipantName[$i];$ATotalPoints[$i]'/>  

在我的下一页上,我按以下方式传递变量,但它们不会在下一页上生成:

if(isset($_POST['AwayMoneyLine'])){  
foreach($_POST['AwayMoneyLine'] as $value) {   
$d = explode(';',$value);    
echo '<input type="hidden" name="hidden[]" value="$d[0];$d[1];$d[2];$d[3];$d[4]">';  

以下是我试图在下一页上获取数据的方法。关于如何将变量传递到此页面的任何建议?在表格上(也在$ d的var_dump上),我得到$ d [0],$ d [1]等等。非常感谢任何帮助!:

foreach($_POST['hidden'] as $value) {  
$f = explode(';',$value);  
echo 'Here is your following bet:';  
echo '<table cellpadding="0" cellspacing="0" border="1" bordercolor="#585858" width=100%>';  
     echo "<tr><td>$e[0]</td><td>$f[0]</td><td>$f[1]</td><td>$f[2]</td><td>$f[3]</td><td>$f[4]</td></tr>";  
}  
echo '</table>';

2 个答案:

答案 0 :(得分:2)

将代码更改为:

echo "<input type=\"hidden\" name=\"hidden[]\" value=\"$d[0];$d[1];$d[2];$d[3];$d[4]\">";  

$ d [0]; $ d [1]; $ d [2]; $ d [3]; $ d [4]不会打印在单引号内。你应该使用双引号和转义属性,如type = \“hidden \”,name = \“hidden [] \”等,

例如:

<?php

$name = 'foo';
echo "$name";
echo '<br />';
echo '$name';
?>

输出:

foo
$name

答案 1 :(得分:0)

use $serial=serialize($array);
echo "<input type=\"hidden\" name=\"hiddenfield\" value=\"<?php echo$serial; ?>">";