【问题标题】:Dynamic text fields values into PHP array动态文本字段值到 PHP 数组中
【发布时间】:2012-08-02 14:09:03
【问题描述】:

我有一个动态的网络表单,在用户告诉它他想要多少之后创建文本,我想做的是将这些文本字段的信息放入下一个表单,我读过一个问题是
pretty much what I want to do;
但是到目前为止我还没有运气;

for ($i = 1; $i <= $quantity; $i++) {
echo "<input type='text' class='text' name='classEmpleado[]' id='empleado$i' />";}

当我尝试检索它们时,我会使用它;

$empleado[] = $_POST['classEmpleado[]'];
$i = 0;    
for ($i = 1; $i <= $quantity; $i++) {
echo "$empleado[$i]<BR><BR>";
}

但我收到错误未定义索引:classEmpleado[] 我做错了什么?

已答复! 对于任何寻找相同事物的人,看看 Sherbrow 的回应, 你只需要编辑循环到这个

$empleado[] = $_POST['classEmpleado[]'];
$i = 0;    
for ($i = 0; $i < $quantity; $i++) {
echo "$empleado[$i]<BR><BR>";
}

【问题讨论】:

    标签: php arrays dynamic field


    【解决方案1】:

    如果$empleado 之前未声明或只是空的,则您正在寻找它

    $empleado = $_POST['classEmpleado']
    

    但如果$empleado 是一个数组,并且包含数据,您可能希望将所有内容合并到一个数组中

    $empleado = array_merge($empleado, $_POST['classEmpleado']);
    

    无论您选择哪种方式,都应该检查以确保 $_POST['classEmpleado'] 已定义并且是一个数组。类似的东西:

    if(isset($_POST['classEmpleado']) && is_array($_POST['classEmpleado'])) {
        /* ... */
    }
    

    【讨论】:

      【解决方案2】:

      试试$empleado[] = $_POST['classEmpleado'];

      当您将name[] 放在字段名的末尾时,它将作为$_POST 中的数组传递给PHP,键为name,如下所示:$_POST['name'] = array(1,2,3,4);

      【讨论】:

      • 这就像一个魅力,谢谢,但我不得不像Sherbrow在下面的答案中解释的那样写它,$empleado = $POST['classEmpleado'];
      【解决方案3】:

      这里的说法是错误的($empleado[] = $_POST['classEmpleado[]']

      如果你想访问 $_POST 名为 classEmpleado[] 的输入字段,你必须这样做:

      for($i=0; $i<count($_POST['classEmpleado']); $i++)
      {
          echo $_POST['classEmpleado'][$i] . '<br /><br />';
      }
      

      【讨论】:

      • 这将是 $_POST 数组的结构:Array ( [classEmpleado] =&gt; Array ( [0] =&gt; Some text 0 [1] =&gt; Some text 1 [2] =&gt; Some text 2 ) )
      • 感谢您的回复,我将在我打算制作的另一个网络表单中尝试此操作,不胜感激!
      • 您不应该将count() 放在循环条件中,它会在循环的每次迭代中执行。
      猜你喜欢
      • 2014-03-22
      • 1970-01-01
      • 2017-04-13
      • 2017-02-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多