【发布时间】:2020-06-15 12:10:22
【问题描述】:
我有几个输入,我从数据库中的数组中获取值。 我需要将所有输入作为一个块重复,而不是重复 html 我试图只编写一次 html,但不知道如何使用 foreach 获取值。
所以我有这样的输入:
<input type="text" name="x[]" value="<?php echo $p;?>">
<input type="text" name2="y[]" value="<?php echo $refarray;?>">
etc.
我需要像这样填写值:
foreach ($x as $p){
foreach ($y as $r){ ?>
我想重复该块 3 次,所以我在一个 while 循环中运行它 3 次:
<?php
$i = 0;
$times_to_run = 3;
while ($i++ < $times_to_run)
{
?>
<input type="text" name="x[]" value="<?php echo $p;?>">
<input type="text" name2="y[]" value="<?php echo $r;?>">
<?php
}
?>
这就是我希望输出的方式:
Block 1
<input type="text" name="x[]" value="<?php echo $p[0];?>">
<input type="text" name2="y[]" value="<?php echo $r[0];?>">
Block 2
<input type="text" name="x[]" value="<?php echo $p[1];?>">
<input type="text" name2="y[]" value="<?php echo $r[1];?>">
Block 3
<input type="text" name="x[]" value="<?php echo $p[2];?>">
<input type="text" name2="y[]" value="<?php echo $r[2];?>">
如何在不写 3 次 html 的情况下做到这一点?
【问题讨论】:
-
html为什么要写三遍?您已经有一个运行 3 次的循环
-
您需要将
name="x"设置为name="x[]",否则当表单提交时,您只会得到最后一个值。 -
是的,我知道了,谢谢。
-
我不想重复,但是如果已经在循环中,我不知道如何打印输入中的值