如何使用 POST 访问动态生成的单选按钮
How to get access to dynamically generated radio buttons using POST
我有一些动态生成的 HTML 单选按钮基于从数据库 table 中获取每个字符,如下所示:
<form name="form" id="myForm" method="POST" action="process.php">
<?php
$stmt = $this->registry->db->getDB()->prepare("SELECT * FROM characters");
$stmt->execute();
if($stmt->rowCount() > 0)
{
foreach($stmt as $row)
{
?>
<input type="radio" name="<?php print $row[0];?>" value="<?php print "value" . $row[1];?>">
<?php
}
}
?>
</form>
我如何使用 $_POST[]
访问在我的 PHP 脚本中生成的每个选定的单选按钮,因为每个单选按钮的 name
属性是动态创建的,我无法理解如何访问 PHP 中的每个单选按钮值,以便我可以处理表单。
请注意,生成的每个单选按钮都是唯一的,因此它们不会以相同的名称分组。
一个简单的方法是创建一个数组,在本例中 data[]
:
<input type="radio" name="data[<?php print $row[0];?>]" value="<?php print $row[1];?>">
然后获取它们:
if(isset($_POST['data'])) {
foreach($_POST['data'] as $name => $value) {
echo "$name = $value<br/>";
}
}
我有一些动态生成的 HTML 单选按钮基于从数据库 table 中获取每个字符,如下所示:
<form name="form" id="myForm" method="POST" action="process.php">
<?php
$stmt = $this->registry->db->getDB()->prepare("SELECT * FROM characters");
$stmt->execute();
if($stmt->rowCount() > 0)
{
foreach($stmt as $row)
{
?>
<input type="radio" name="<?php print $row[0];?>" value="<?php print "value" . $row[1];?>">
<?php
}
}
?>
</form>
我如何使用 $_POST[]
访问在我的 PHP 脚本中生成的每个选定的单选按钮,因为每个单选按钮的 name
属性是动态创建的,我无法理解如何访问 PHP 中的每个单选按钮值,以便我可以处理表单。
请注意,生成的每个单选按钮都是唯一的,因此它们不会以相同的名称分组。
一个简单的方法是创建一个数组,在本例中 data[]
:
<input type="radio" name="data[<?php print $row[0];?>]" value="<?php print $row[1];?>">
然后获取它们:
if(isset($_POST['data'])) {
foreach($_POST['data'] as $name => $value) {
echo "$name = $value<br/>";
}
}