作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在构建一个页面,该页面写出不同数量的类别,然后在每个类别下写出与该类别关联的单位。每个类别部分都是一个单独的表单,其中包含重复的字段,并根据它们所属的行进行命名。布局是这样的:
Category 1
- Unit 1 Update Fields
- Unit 2 Update Fields
- Unit 3 Update Fields
Submit Button for Category 1
etc.
每个字段的名称相同,并在末尾添加单位编号:
- Features1, Features2, Features3, etc.
给定类别中的总行数保存在变量 $id# 中,其中 # 是类别的 ID(例如:$id1、$id2、$id3 等)。
我已经解决了大部分问题。但是,如果表单已更改,我想循环并执行 SQL 查询,这就是我遇到麻烦的地方。此时,我不知所措。这是我的代码的简化版本:
if (isset($_POST['submit'])) {
$form = $_POST['form']; //save which category we're on in a variable.
for ($i = 1; $i <= ${id.$form}; $i++) { //I think the problem is here
$Feature = $_POST['Feature'.$i];
$update = "UPDATE Units
SET Feature ='$Feature'
WHERE ID='$i'";
if (($Feature!=${initialFeature.$i})) {
$updateQuery = mysqli_query($dbc, $update);
}
}
}
我怎样才能做到这一点?有更好的方法吗?
最佳答案
我的方法是在字段名称中使用数组。
<input type="text" name="id[]" value="$foo">
然后在表单的操作页面上
$id = $_POST['id'];
for($i=0;$i<sizeof($id),$i++){
...//do something here using $id[$i] to select elements in the array
}
我认为这就是您正在尝试做的事情。
关于php - 循环遍历表单以更新 SQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20319159/
我是一名优秀的程序员,十分优秀!