[英]Select box only showing last record in drop down in php
我有一个下拉框,它仅显示数据库中的最后一条记录,我的表中有多个记录,我希望它显示所有记录。 该脚本在函数中。
function appear(){
include('includes/x.php');
include('includes/y.php');
global $database;
$database = new MySQLDatabase();
$sql="SELECT * FROM tbltype";
$result_set=$database->query($sql);
while($row=$database->fetch_array($result_set)){
$type=$row['type'];
$place= "Please enter type: "." ".'<select name="type" id="type"><option value="-1">Select a province</option><option value="none">None</option>'.'<option value='.$type.'>'.$type.'</option>'.'<br></select>'."<input type=\"submit\" name=\"Add\" value=\"Add\" style=\"border:dotted;\"/>";}
return $place;
}
您将覆盖$place
上所有检索到的行。 您应该将新读取的行与先前的行合并。 使用$X .=
。
这样尝试
while($row=$database->fetch_array($result_set)){
$type=$row['type'];
$option .="<option value='".$type."'>".$type."</option>";
}
$place= "Please enter type: "." ".'
<select name="type" id="type">
<option value="-1">Select a province</option>
<option value="none">None</option>'.
$option.'</select>';
从我的代码中可以发现,问题是您的下拉声明位于while函数中,您应该做的是声明您的
<select>
在您的时间之外进行标记,然后离开
'<option value='.$type.'>'.$type.'</option>'
阻塞你的内心并关闭你的
</select>
在while函数之外,这样它将为您的下拉列表填充正确的值。
您的连接不正确。 尝试这个,
$place = 'Please enter type: <select name="type" id="type"><option value="-1">Select a province</option><option value="none">None</option>';
while($row=$database->fetch_array($result_set)){
$type=$row['type'];
$place .= "<option value='".$type."'>".$type."</option>";
}
$place .= "<br></select><input type=\"submit\" name=\"Add\" value=\"Add\" style=\"border:dotted;\"/>";
return $place;
function appear() {
include('includes/x.php');
include('includes/y.php');
global $database;
$database = new MySQLDatabase();
$sql = "SELECT * FROM tbltype";
$result_set = $database->query($sql);
$place = "";
$place.= 'Please enter type:<select name="type" id="type"><option value="-1">Select a province</option>';
while ($row = $database->fetch_array($result_set)) {
$type = $row['type'];
$place.='<option value="none">None</option>' . '<option value=' . $type . '>' . $type . '</option>';
}
$place.='</select><input type=\"submit\" name=\"Add\" value=\"Add\" style=\"border:dotted;\"/>';
return $place;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.