我如何从表单输入创建数组

时间:2018-11-30 20:44:35

标签: php html

我正在尝试编写一个php脚本,该脚本从此表单中获取输入并为每个输入框/文本框内容创建一个具有唯一键的数组。

<div class="container">
  <div class="row">
    <div class="col-3 mx-auto">
      <form action="adminhandler.php">
        <div class="form-group">
          <label for="product name">Enter product name</label>
          <input type="text" class="form-control" id="productName" aria-describedby="emailHelp" placeholder="" name="productname">
        </div>
        <div class="form-group">
          <label for="product name">Select product category</label>
          <select name="select" class=" custom-select">
          <option selected>Open this select menu</option>
          <option value="1">Formal Shoes</option>
          <option value="2">Sneakers</option>
          <option value="3">Tracksuits</option>
          <option value="3">Clothing</option>
          <option value="3">Accessories</option>
        </select>
        </div>
        <div class="form-group">
          <label for="product price">Enter product price(Naira)</label>
          <input type="text" class="form-control" id="productPrice" aria-describedby="emailHelp" placeholder="" name="price">
        </div>
        <div class="form-group">
          <label for="product name">Select image</label>
          <input type="file" class="form-control-file" id="productimage" aria-describedby="emailHelp" placeholder="">
        </div>
        <button type="submit" class="btn btn-primary">Submit</button>
      </form>
    </div>
  </div>
</div>

1 个答案:

答案 0 :(得分:0)

我认为您想将表单用作数组,然后将相同的数据作为数组传递。如果使用$ _POST,则需要使用HTML的name属性。并使用类似这样的东西:

<input name="person[1][first_name]" value="jane" />

这在通过PHP时将作为数组发送。 这是参考: http://php.net/manual/en/reserved.variables.post.php 一位贡献者的节选:

   <form>
<input name="person[0][first_name]" value="john" />
<input name="person[0][last_name]" value="smith" />

<input name="person[1][first_name]" value="jane" />
<input name="person[1][last_name]" value="jones" />
</form>

当尝试使用PHP处理值时

<?php
var_dump($_POST['person']);
//will get you something like:
array (
0 => array('first_name'=>'john','last_name'=>'smith'),
1 => array('first_name'=>'jane','last_name'=>'jones'),
)
?>