【发布时间】:2018-05-23 09:30:32
【问题描述】:
我如何处理动态表单。选项的数量将因数据库中的选项数量而异。基于是/否值将在数据库中更新是用户想要测试该参数。这是我的代码
<form action="?userid=<?php echo $userid;?>&tankid=<?php echo $tankid;?>&action=update" method="POST">
<table width="100%">
<tr>
<th >Parameter name:</th>
<th >Do you want to test it?</th>
</tr>
<?php
while ($row = $records_param_info->fetch(PDO::FETCH_ASSOC)){
$checked_yes = "";
$checked_no = "";
echo "<tr>";
echo "<td>";
echo $row['paramname'];
echo "</td><td>";
if ($row['active'] == 1){
$checked_yes = "checked";
$checked_no = "";
} else {
$checked_yes = "";
$checked_no = "checked";
}
echo '<label>Yes</label><input type="radio" name='.$row['parameterid'].' '.$checked_yes.' value="1">';
echo '<label>No</label><input type="radio" name='.$row['parameterid'].' '.$checked_no.' value="0">';
echo "<td></tr>";
}
?>
</table>
<br>
<center><input type="submit" name="Update" value ="Update"></center>
</form>
我的问题是如何检索数据并将其处理到数据库中,因为“名称”总是不同的,数字也会不同。
【问题讨论】:
-
您有什么具体问题吗?目前尚不清楚您的问题是什么。
-
如果您在提交后询问如何处理 $_POST 变量,您将需要遍历 $_POST 数组中的每个键/值(验证所有内容),然后根据您的需要。
-
我的问题是如何检索数据并将其处理到数据库,因为“名称”总是不同的,数字也会不同。
-
如果
parameterid有无限的可能性/出现,您需要将它们存储在单独的表中并将每一行与用户ID 和tankid 相关联。这是为了遵守第一范式 (1NF) 而不是尝试使用分隔符将所有键值粉碎到原始表上的单个字段中。
标签: php forms dynamic radio-button