0

我正在创建一个脚本来将食谱添加到数据库中。对于我的 add_recipe 表单,我想为用户提供一个选项,让他们可以根据需要添加任意数量的成分。

以下代码只是我出于测试目的而提出的,因为我以前从未尝试过:

<?php
$ingredient = '(another ingredient)';
$num_ingredients = $_REQUEST['select'];
?>
<html>
<form name="form1" method="post" action="onchange.php">
<select name="select" onchange="javascript: document.form1.submit();">
  <option value=1>Add 1 Ingredient</option>
  <option value=2>Add 2 Ingredients</option>
  <option value=3>Add 3 Ingredients</option>
</select>
</form>
</body>
</html>
<?php
while ($num_ingredients <= 3) {
  $num_ingredients++;
  echo $ingredient;
  echo '<br />';
}
?>

问题是......我的代码,大声笑。例如...

选项值=1 返回:

(another ingredient)
(another ingredient)

选项值=3 返回:

(another ingredient)

有人可以引导我朝着正确的方向前进吗?非常感谢任何帮助 8)

4

2 回答 2

2

你需要一个计数器变量。

$count = 0;
if ($num_ingredients > 3) 
   $num_ingredients = 3;
while ($count < $num_ingredients ) {
  $count++;
  echo $ingredient;
  echo '<br />';
}
于 2012-08-08T00:18:02.180 回答
1

这里的部分需要更改。$num_ingredients 来自选择为 1、2 和 3 ...您的循环基本上是在说 $num_ingredients 小于或等于 3。选择 1 会给你三个循环,2 会给你 2 个循环,3 会给你1个循环。你需要有一个柜台,即

<?php
for ($count = 0; $count < $num_ingredients; $count++) 
{
    echo $ingredient;
    echo '<br />';
}
?>
于 2012-08-08T00:24:38.023 回答