【问题标题】:Fill a Select on the fly with the number of values pass through a variable with PHP使用 PHP 通过变量的值的数量动态填充 Select
【发布时间】:2016-08-16 13:42:35
【问题描述】:

我有一个通过 PHP 打印的选择

echo ' <select>'; 
echo '  <option value="guest">Num of People</option>';
echo '  <option value="1">1</option>';
echo '  <option value="2">2</option>';
echo '  <option value="3">3</option>';
echo ' </select>'; 

但我想根据通过变量传递的数字来编写选项的数量:$numofPeople,这是从我的数据库中提取的。

类似:

echo ' <select>'; 
echo '  <option value="guest">Num of People</option>';
i=1;
While  i< $numofPeople
    echo '  <option value="i">i</option>'; 
    i = i=1;
Loop
echo ' </select>'; 

非常感谢

【问题讨论】:

  • 很好。祝你好运。你有编程问题吗?这个网站是用来提问的,不是一个倾倒你的待办事项的地方。
  • 你已经用伪代码编写了它,所以你似乎(大部分)已经理解了你正在尝试做的事情的概念。你的问题真的只是“我如何编写 PHP 代码”吗?
  • 你在正确的轨道上,只需多做一些关于如何在 php 中加入字符串和循环
  • @Don'tPanic 是的,这是我的问题,我有我想做的逻辑,但是我的 PHP 知识有点有限,不知道如何将我的伪代码写入 PHP .非常感谢

标签: php variables select drop-down-menu


【解决方案1】:

试试这样的

echo ' <select>'; 
echo '  <option value="guest">Num of People</option>';

for($i=1;$i< $numofPeople;$i++){
    echo '  <option value="'.$i.'">'.$i.'</option>'; 
}

echo ' </select>'; 

【讨论】:

    【解决方案2】:

    正如 Sameer Jain 所说,您走在正确的轨道上,所以我会给您一点帮助:

    <html>
      <head>
      </head>
      <body>
    <?php
    echo ' <select>'; 
    echo '  <option value="guest">Num of People</option>';
    $i=1;
    $numofPeople = 5;
    While ( $i <= $numofPeople )
    {   echo "  <option value='$i'>$i</option>"; 
        $i = $i+1;
    }
    echo ' </select>';
    ?>
      </body>
    </html>
    

    记得将此代码保存在 .PHP 文件中。

    请注意while 内部的echo,以及外部的双引号和value 中的单引号。这很重要。

    【讨论】:

    • 谢谢你,Jose 成功了。我已经关注了不要惊慌的链接并自己弄清楚,这就是我解决它的方法。谢谢大家
    【解决方案3】:

    你需要做这样的事情:

    <?php
    
    $query = "SELECT COUNT(*) AS total FROM people";
    $result = mysqli_query($mysqli, $query);
    $rows = mysqli_fetch_assoc($result);
    
    $totalPeople = $rows['total'];
    
    if ($totalPeople > 0) {
        echo ' <select>';
        echo ' <option value="guest">Num of People</option>';
        for ($i = 0; $i <= $totalPeople; $i++) {
            echo '  <option value="$i">'.$i.'</option>';
        }
    
        echo ' </select>';
    }
    
    ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-14
      • 2018-05-18
      • 2012-10-10
      • 1970-01-01
      • 1970-01-01
      • 2017-09-01
      • 1970-01-01
      相关资源
      最近更新 更多