PHP - 会话数组看不到?

时间:2011-03-22 11:08:30

标签: php arrays foreach

我想从我的信息页面获取人员信息。 信息页面: $ _COOKIE [oda_sayisi]:房号

$

i=0;
while ($i < $_COOKIE[oda_sayisi] ) {
                $children=$_COOKIE["child_$i"];
                $adult=$_COOKIE["adult_$i"]+$children;
                $sayi=0;
                while( $adult>= $sayi) {
?>
<input name="name_<?=$i?>[]" type="text"   id="name"  />
<?
$sayi++;
                }


                $i++;

                }
?>

我的结果页面代码是:

function temizle($theValue, $theDefinedValue = "", $theNotDefinedValue = "")
{
$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

return $theValue;
}
    foreach ($_POST as $degisken=>$veri ) {
        $_SESSION[$degisken]=temizle($veri);
    }
    echo $_SESSION[name_0][0].'<br> ---';
    echo $_SESSION[name_0][0][0].'<br> ---';
    echo $_SESSION[name_0][0][2].'<br>';

当我发布页面时,我得到以下结果:

Array ( [0] => muzaffer ) MUZAFFER 
---M
---Z

这不起作用$ _SESSION [name_0] [0]?为什么?有人有anyidea?不同的方式?

1 个答案:

答案 0 :(得分:2)

尝试使用此代码

<input name="name_<?php echo $i; ?>" type="text"   id="name"  />

永远不要使用short,因为某些服务器没有启用它们,我还删除了name属性中的[]。

PHP将POST值设为$_SESSION['name_0']

session_start();
$i = 0;
foreach ($_POST as $key=>$value ) {
        $_SESSION[$key]= $value;
    }
    print_r( $_POST );
     echo $_SESSION[name_0].'<br> ---';

这对我有用。