我正在尝试使用for和foreach循环生成表单。想法很简单,但由于某种原因,我有一个奇怪的问题。 for循环应该有5次迭代,这很好但在这个for循环中我嵌入了一个foreach循环。 Foreach循环似乎只在for循环的第一次迭代时完成。我认为代码还可以,但也许多个连接模糊了我的想法,找不到我的错误。这就是代码目前的样子:
<?php
include("pdo.php");
$stmt = $pdo->query('SELECT name FROM Ingredients');
?>
<html>
<head>
<title></title>
</head>
<body>
<form>
<?php
for ($i = 1; $i <= 5; $i++) {
echo "<label>Ingredient $i</label><select name='ingredient $i'>";
foreach ($stmt as $row) {
echo ('<option value="' . $row['name'] . '">' . $row['name'] . '</option>' . "\n");
}
echo "</select><br>";
}
?>
</form>
</body>
</html>
换句话说,只填充第一个列表,但接下来的四个列表为空。