如何使用mysqli预准备语句(PHP)填充下拉框


How to populate a dropdown box using mysqli prepared statements (PHP)

我正在尝试弄清楚如何使用MySQL表中的数据填充表单中的下拉菜单。我发现在线PHP手册有点帮助(http://php.net/manual/en/mysqli.prepare.php),但我仍然没有完全理解它。

这是我到目前为止所拥有的...

function fillBuildings() {
    $stmt = $mysqli->prepare("SELECT * FROM buildings");
    $stmt->execute();
    $stmt->close();
    while ($stmt 
 }

知道如何构建表单,这样的表单我得到了数据,我只是不知道我应该循环什么来获取数据。

您可以选择特定列并绑定结果。

$stmt = $mysqli->prepare("SELECT `id`, `name` FROM `buildings`");
$stmt->bind_result($id, $name);
$stmt->execute();
$stmt->store_result();
$blds = array();
while($stmt->fetch()){
    $blds[] = array(
        "id"  => $id,
        "name"=> $name
    );
}
?>
<select>
    <?php for($i = 0; $i < count($blds); $i++):?>
    <option value="<?=$blds[$i]["id"]?>"><?=$blds[$i]["name"]?></option>
    <?php endfor;?>
</select>