我有一个php / html表格形式,它由mysqli调用的只读数据(下面数据字段中的$ variables)和最后的用户输入文本字段组合填充(输入类型=文本)。一行如下例所示:
<tr>
<td><?php echo "<strong>$navn</strong>";?></td>
<td><?php echo "$primaereMuskelgruppe";?></td>
<td><?php echo "$sekundaereMuskelgruppe";?></td>
<td><?php echo "$redskab";?></td>
<?php
switch ($antalReps) {
case 'Alle':?>
<td><?php echo "$vaegt12reps";?></td>
<td><?php echo "$vaegt10reps";?></td>
<td><?php echo "$vaegt8reps";?></td>
<td><?php echo "$vaegt6reps";?></td>
<?php break;?>
<?php case 12:?>
<td><?php echo "$vaegt12reps";?></td>
<?php break;?>
<?php case 10:?>
<td><?php echo "$vaegt10reps";?></td>
<?php break;?>
<?php case 8:?>
<td><?php echo "$vaegt8reps";?></td>
<?php break;?>
<?php case 6:?>
<td><?php echo "$vaegt6reps";?></td>
<?php break;?>
<?php } ?>
<td><?php echo "$inkrementering";?></td>
<td><input type="text" name="antalReps3saet"><br></td>
<?php } ?>
</tr>
该表将有多行。
当用户提交表格时,我想在单独的页面上发布每一行的数据(用于不同的功能),并分别遍历每一行,同时访问mysqli数据和用户输入数据
我非常确定我需要制作和发布数组,但我无法弄清楚如何包含只读和用户输入。
任何帮助?
答案 0 :(得分:0)
如果我理解正确...此代码正在创建一个将发布到另一个页面的表单,并且所有这些值都需要包含在该帖子中?
在这种情况下,所有这些值都必须是表单值。 DOM结构不包含在POST请求中,表单元素值是。例如,您在此处有一个表单元素:
<input type="text" name="antalReps3saet">
但是,这不是表单元素:
<td><?php echo "$vaegt6reps";?></td>
因此$vaegt6reps
的值需要在表单元素中。您可以直接在代码中使用这些元素,并依赖样式使它们看起来像非形式(仅显示)DOM元素:
<td><input type="text" name="vaegt6reps" value="<?php echo "$vaegt6reps";?>"></td>
样式可能会变得棘手,如果用户发现这些是表单元素,则UX可能会因浏览器而变得怪异。 (你想要禁用它们来制作它们&#34;只读&#34;正如你所说,但请记住,任何用户都可以在任何形式的POST中操作值,如果他们愿意的话。&#34;在这种情况下,只读&#34;是一种错误的安全感。)
因此,您可以将值与其显示一起作为隐藏的表单元素:
<td><?php echo "$vaegt6reps";?><input type="hidden" name="vaegt6reps" value="<?php echo "$vaegt6reps";?>"></td>
精明的用户仍然可以在执行POST之前修改该值,除了不依赖客户端值之外,您除此之外什么也做不了。但在这种情况下,用户体验将更容易维护。