我试图通过while循环从我的数据库中提取数据。 代码会提取正确数量的SQL行,但是它会一遍又一遍地重复相同的条目。
我已经花了几个小时摆弄这段代码,似乎无法让它发挥作用。 任何建议都将不胜感激。
<?php
$sql = "SELECT * FROM grow_details";
$query = $conn->query($sql);
$grows = array();
while ($grow = mysqli_fetch_assoc($query)) {
$grows[] = $grow;
}
foreach($grows as $grow) {
?>
<div>
<h2><?php echo $name; ?></h2>
<table>
<tr>
<td><label for="datePlanted">Date Planted:</label></td>
<td><?php echo $datePlanted; ?></td>
</tr>
<tr>
<td><label for="strain">Strain:</label></td>
<td><?php echo $strain; ?></td>
</tr>
<tr>
<td><label for="toMaturity">Days to mature:</label></td>
<td><?php echo $toMaturity; ?></td>
</tr>
<tr>
<td><label for="type">Type:</label></td>
<td><?php echo $type; ?></td>
</tr>
<tr>
<td><label for="gender">Gender:</label></td>
<td><?php echo $gender; ?></td>
</tr>
<tr>
<td><label for="medium">Medium:</label></td>
<td><?php echo $medium; ?></td>
</tr>
</table>
</div>
<?php
}
?>
输出:
T3
Date Planted: 12/20/2017
Strain: Kiwi
Days to mature: 50
Type: ?
Gender: ?
Medium: Aero
<br>
T3
Date Planted: 12/20/2017
Strain: Kiwi
Days to mature: 50
Type: ?
Gender: ?
Medium: Aero
<br>
T3
Date Planted: 12/20/2017
Strain: Kiwi
Days to mature: 50
Type: ?
Gender: ?
Medium: Aero
答案 0 :(得分:3)
你没有使用你在循环中迭代的数组中的任何东西。您每次只打印相同的$name
,$datePlanted
等变量。 echo $name
应为echo $grow['name']
,其他所有变量均相似。