我有一个问题要问。显然,对于我的网站,我正在更新数据,为此,我使用下拉列表进行更新,但是,我不知道如何将原始输入放入动态下拉列表中,因此我可能需要把原始的和新的放在一起,如果用户不希望在那里做任何改变,这对用户来说可能有点混乱。我将在下面截图,以便您可以更好地理解。
echo "Old Branch";
echo ": " . "<input type = 'text' style = 'width: 200px' name ='branchno' value = '$sbranch_name' required readonly>";
echo "<br><br>";
echo "New Branch: ";
$mysqli = new mysqli(spf, dbuser, dbpw, db);
$sql="Select sbranch_name from branches";
$result = $mysqli->query($sql);
if ($result->num_rows > 0) {
echo "<select name='sbranch_name'>";
while($row = $result->fetch_assoc()) {
echo "<option value='" . $row['sbranch_name'] . "'>" . $row['sbranch_name'] . "</option>";
}
echo "</select>";
}
$mysqli->close();
Old input in text and new input in dropdown list
编辑代码:
$mysqli = new mysqli(spf, dbuser, dbpw, db);
$sql="Select sbranch_name from branches";
$result = $mysqli->query($sql);
$data= array();
while($row = $result->fetch_assoc())
{
$data[] = $row['sbranch_name'];
}
$data[] = $sbranch_name;
echo "<select name='sbranch_name'>";
foreach($data as $branch)
{
echo "<option value='" .$branch . "'>" . $branch. "</option>";
}
echo "</select'>";
答案 0 :(得分:0)
首先将数据从DB添加到数组
$data= array();
while($row = $result->fetch_assoc()) {
$data[] = $row['sbranch_name'];
}
然后jus将数据添加到该数组,添加原始分支:
$data[] = $sbranch_name;
并使foreach循环显示新的选择列表。
echo "<select name='sbranch_name'>";
foreach($data as $branch){
echo "<option value='" .$branch . "'>" . $branch. "</option>";
}
echo "</select'>";
答案 1 :(得分:0)
<select>
//loop through the option
<option value="test" <?= $original=="test"?"selected">Audi</option>
</select>
如果选项的值与之前保存在数据库中的$ original匹配,则概念是回显'selected'。
您可以使用之前的操作替换上述“测试”。您需要添加的唯一内容是将先前存储的值从数据库检索到$ original并使用该概念。
例如,当选项附加在选项内部时,它会选择该值作为默认值。
<select>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="vw">VW</option>
<option value="audi" selected>Audi</option>
</select>
如果你没有得到我正在分享的东西,我可以用你的代码向你解释。