【发布时间】:2013-12-09 16:23:45
【问题描述】:
我有这样的表格
<form>
<input type="text" class="form-control" placeholder="Titel" name="levels[level]">
<input type="text" class="form-control" placeholder="Titel" name="levels[build_time]">
<input type="text" class="form-control" placeholder="Titel" name="levels[level]">
<input type="text" class="form-control" placeholder="Titel" name="levels[build_time]">
</form>
我希望 $_POST 输出一个数组,如:
Array (
[1] => Array ( [level] => 1 [build_time] => 123 )
[2] => Array ( [level] => 2 [build_time] => 456 )
)
我知道我可以执行诸如 name="levels[1][build_time]" 之类的操作,但是由于这些元素是动态添加的,因此很难添加索引。还有其他方法吗?
按照建议,我更改了表格。我现在还包含了我的整个 HTML,因为我认为我在这里遗漏了一些东西。我现在的 HTML:
<div class="form-group">
<label class="col-md-2">Name(z.B. 1)</label>
<div class="col-md-10">
<input type="text" class="form-control" placeholder="Titel" name="levels[][level]">
</div>
<label class="col-md-2">Bauzeit(In Sekunden)</label>
<div class="col-md-10">
<input type="text" class="form-control" placeholder="Titel" name="levels[][build_time]">
</div>
</div>
<div class="form-group">
<label class="col-md-2">Name(z.B. 1)</label>
<div class="col-md-10">
<input type="text" class="form-control" placeholder="Titel" name="levels[][level]">
</div>
<label class="col-md-2">Bauzeit(In Sekunden)</label>
<div class="col-md-10">
<input type="text" class="form-control" placeholder="Titel" name="levels[][build_time]">
</div>
</div>
我现在得到的输出是:
[levels] => Array (
[0] => Array ( [level] => 1 )
[1] => Array ( [build_time] => 234 )
[2] => Array ( [level] => 2 )
[3] => Array ( [build_time] => 456 )
)
按照您在编辑中的建议,我编辑了表单并将方括号移到了名称的末尾。我现在得到的输出是:
[levels] => Array (
[level] => Array (
[0] => 1
[1] => 2
)
[build_time] => Array (
[0] => 234
[1] => 456
)
)
我想这会奏效,但看起来仍然很复杂。没有更好的办法吗?
【问题讨论】:
标签: php html html-input