我知道你可以使用多个表单输入名称数组(例如<input type="text" name="username[]">
,但这也可以用于整个字段集吗?如何使用PHP $_POST全局变量来操作呢?
我要做的是:
<fieldset name="player[]">
<input type="text" name="username">
<input type="number" name="points">
</fieldset>
<fieldset name="player[]">
<input type="text" name="username">
<input type="number" name="points">
</fieldset>
我试图这样做的原因是因为我正在构建一个允许用户动态添加/减去"玩家"字段集的表单。如果你有一个比我要求的更好的解决方案,请随时提供一个替代方案。
或者,如果您想要这样的分组,您可以在表单中创建一个分组,如下所示:
<form method="POST" action="">
<fieldset>
Username: <input type="text" name="player[0][username]" />
Points: <input type="number" name="player[0][points]" />
</fieldset>
<fieldset>
Username: <input type="text" name="player[1][username]" />
Points: <input type="number" name="player[1][points]" />
</fieldset>
<br/>
<input type="submit" name="submit" />
</form>
处理时:
if(isset($_POST['submit'])){
$all_players = $_POST['player'];
echo '<pre>';
print_r($all_players);
echo '</pre>';
}
结果应该是这样的:
Array
(
[0] => Array
(
[username] => Test1
[points] => 1
)
[1] => Array
(
[username] => Test2
[points] => 2
)
)