php array_push没有推

时间:2017-10-13 07:43:38

标签: javascript php html

我有一个html表单,它位于input type="number",并使用javascript设置div中input的数量,每个都有一个唯一的名称:item1,{ {1}} ...

我目前正在尝试在一个php数组中设置输入的值,然后循环以获取内容,但是item2不会打印任何内容。

echo $item

如果有帮助,这是我的html表单和javascript:

$items = array();
if (isset($_POST['num'])) {
    for ($i = 1; $i <= intval($_POST['num']); $i++) {
        array_push($items, $_POST['item' + $i]);
    }
    foreach ($items as $item) {
        echo $item;
    }
}

JS:

How many Items: <input min="1" max="5" type="number" onchange="updateInput(this.value, document.getElementById('itemSpace'), 1, 5)" name="num"/>
Enter the items: <div id="itemSpace" name="itemSpace"></div>

1 个答案:

答案 0 :(得分:0)

尝试类似

的内容
if (isset($_POST['num'])) {
  foreach ($_POST['num'] as $key => $num) {
    $items[] = $_POST['item' + $key]
  }
}

如果设置了$ _POST [&#39; num&#39;],则会调用foreach,您可以将其转换为$ key =&gt; $ value,所以你得到你以后可以使用的$ key。

您有使用array_push的原因吗?如果您只想将一个元素添加到数组中,还可以键入$ arrayName [] =&#39; ...&#39;。