所以我有下拉菜单,我想填写数组中的项目。问题是数组中唯一的东西是数据库中的最后一项。 这是PHP:
$link = mysqli_connect("79.170.44.77","cl38-baza","3g!cwDwxm","cl38-baza");
//LOADING DATA
if(mysqli_connect_error()) {
die("Database Connection Error");
} else {
$query = "SELECT name FROM People ";
$result = mysqli_query($link,$query);
if(mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
$names= array($row);
}
} else {
echo "no result!";
}
}
HTML就是:
<select class="form-control select2" style="width: 100%;">
<option selected="selected">Choose one</option>
<?php
foreach($names as $name) { ?>
<option value="<?php echo $name['name'] ?>"><?php echo $name['name'] ?></option>
<?php
} ?>
</select>
感谢您的帮助!
答案 0 :(得分:1)
此行为$ names
指定值$names= array($row);
相反,您必须添加到数组才能在HTML中循环
$names[] = $row;
同时声明
$names = [];
以上
if(mysqli_num_rows($result) > 0) {
答案 1 :(得分:0)
你不需要
$names= array($row);
你需要
$names[]= $row;
答案 2 :(得分:0)
我们需要使用如下代码:
$ names = array();
$ names [] = $ row;
如果您只想要数组中的最后一项($ names),请使用结束($ names)
答案 3 :(得分:0)
你快到了!
更改$names= array($row);
至$names[]= $row;