如我在表单里定义了5个输入框
<?php
for($i = 0;$i < 5;$i++){
?>
<input name="e[]" type="text" />
<?php

?>
<input name="submit" type="submit" value="确认" />
<input type="hidden" name="submitted" value="TRUE" />
怎么把e中的内容传递给一个array变量
我写了如下的代码,但是不对,显示错误是:Undefined index: e[0] 请高手帮忙纠正
<?php
if(isset($_POST["submitted"])){
for($i = 0;$i < 5;$i++){
$x[$i] = $_POST["e[$i]"];
}
}

解决方案 »

  1.   


    <!DOCTYPE html PUBLIC "-//W3C//DTD html 4.01 Transitional//EN">
    <head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    </head>
    <body>
    <form action="" method="post" >
    <?php
    for($i = 0;$i < 5;$i++){
    ?>
    <input name="e[]" type="text" />
    <?php
    }
    ?>
    <input name="submit" type="submit" value="确认" />
    <input type="hidden" name="submitted" value="TRUE" />
    </form> 
    <?php
    if(isset($_POST["submitted"])){ //如果表单提交
    $e = $_POST["e"]; //得到变量,会是一个数组
    print_r ($e); //输出数组
    echo "<br />";
    foreach ($e as $key => $value)
    {
    echo "$value <br />"; //输出每个input框的值
    }
    }
    ?>
      

  2.   

    这样来取得值的$_POST['e']取得的就是数组,然后再用PHP的数组操作函数操纵这些数据不是很方便
      

  3.   

    你这样传过来,直接就是数组了啊,你只需要判断是不是数组,然后count一下检查是否有值就可以了