【发布时间】:2020-03-23 08:03:00
【问题描述】:
我创建了一个表单,其中我的输入由 foreach 循环创建,数据来自 mysql 数据库。
当使用 post 方法提交表单时,我希望能够通过 $_POST 接收所有信息,但目前我只接收来自 foreach 循环中最后创建的输入的信息。 变量$fishes来自mysql数据库,包含8行,所以foreach循环了8次。
我的目标是将这些数据插入到数据库表中,以便我可以回忆它。 当我在按下提交后运行 XDebug 时,我的 $_POST 包含操作:insertFish 和数量:(来自 foreach 中最后一次迭代的输入的值)。
我也希望能够看到对应数量的标签。我认为通过添加标签会起作用,但它没有。
我的表格:
<form class="fishadd__form" action="index.php?page=fishtanks&id= <?php echo $_SESSION['tank_id']; ?>" method="post">
<input type="hidden" name="action" value="insertFish">
<div class="fishadd__box--wrapper">
<?php foreach($fishes as $fish): ?>
<div class="fishadd__box">
<h2 class="fish__name"><?php echo $fish ['name']?></h2>
<img class="fish__picture" src="../src/assets/img/goldfish.svg" alt="Goldfish" width="125">
<div class="item__counter">
<div class="fishadd__bottom">
<button class="minus__button">-</button>
<label for="quantity" name="<?php echo $fish['name']?>">
<input class="fishadd__input" type="number" name="quantity" min="0" value="0">
</label>
<button class="plus__button">+</button>
</div>
</div>
</div>
<?php endforeach; ?>
</div>
<button type="submit" class="add__fish" value="submit">add to tank</button>
</form>
【问题讨论】:
-
您是否尝试在输入字段中添加动态名称?
-
每个输入的名称必须是唯一的或数组,否则你会遇到很多冲突。
-
我将尝试使用数据库中的名称作为输入的名称,就像我对标签所做的那样
-
输入字段的唯一名称是修复!谢谢!