我有一个选择,我正在通过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>';
非常感谢
正如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
中。这很重要。
你需要做这样的事情:
<?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>';
}
?>
试试这样的事情
echo ' <select>';
echo ' <option value="guest">Num of People</option>';
for($i=1;$i< $numofPeople;$i++){
echo ' <option value="'.$i.'">'.$i.'</option>';
}
echo ' </select>';