使用PHP通过变量传递值,即可快速填充Select

时间:2016-04-22 19:41:28

标签: php variables select drop-down-menu

我有一个我正在通过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>'; 

非常感谢

3 个答案:

答案 0 :(得分:0)

尝试这样的事情

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

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

echo ' </select>'; 

答案 1 :(得分:0)

正如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文件中。

请注意echo内的while,以及双引号如何在外,单引号位于value。这很重要。

答案 2 :(得分:0)

你需要做这样的事情:

<?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>';
}

?>