从下拉列表中删除所选选项 php
Remove selected option from dropdown php
我有一个场景,我有一个用户的编辑配置文件页面,其中有一个 'Speciality' 下拉菜单,它的选项正在通过 While 循环从数据库 table 'speciality' 中获取。
我想要的是首先在下拉列表中显示 Selected 选项,
为此,我在顶部放置了以下代码:
<option value=""><?php echo $row2["speciality"];?></option>
但是问题又来了,while 循环正在从数据库中获取相同的选项,因此它变得重复,我想要的是从 while 循环的选定选项中删除选定的选项。
谁能帮忙?
完整代码:
<?php
$id = $_GET['id'];
$result = mysqli_query($con, "SELECT * FROM patient WHERE id = $id");
$rows = mysqli_num_rows($result);
$result2 = mysqli_query($con, "SELECT * FROM surgery_team WHERE p_id = $id");
$rows2 = mysqli_num_rows($result2);
while($patient = mysqli_fetch_assoc($result)) {
$speciality = $patient['speciality'];
}
}
$result2 = mysqli_query($con,"SELECT *
FROM speciality
WHERE id = $speciality");
$row2 = mysqli_fetch_array($result2);
?>
<div class="col-6">
<label class="control-label">Speciality</label>
<select name="speciality" class="form-control" id="category-dropdown">
<option value=""><?php echo $row2["speciality"];?></option>
<?php
$result = mysqli_query($con,"SELECT *
FROM speciality
WHERE parent_id = 0");
while($row = mysqli_fetch_array($result)) {
?>
<option value=""><?php echo $row["speciality"];?></option>
<?php
}
?>
不要将 2 份副本扔到列表中,只需将选中的一份作为下拉列表中的选定项即可。
<div class="col-6">
<label class="control-label">Speciality</label>
<select name="speciality" class="form-control" id="category-dropdown">
<?php
$result = mysqli_query($con,"SELECT *
FROM speciality
WHERE parent_id = 0");
while($row = mysqli_fetch_array($result)) {
$attr = $row2["speciality"] == $row["speciality"] ? "selected='selected'" : '';
echo "<option $attr value='$row[speciality]'>$row[speciality]</option>";
}
我有一个场景,我有一个用户的编辑配置文件页面,其中有一个 'Speciality' 下拉菜单,它的选项正在通过 While 循环从数据库 table 'speciality' 中获取。 我想要的是首先在下拉列表中显示 Selected 选项, 为此,我在顶部放置了以下代码:
<option value=""><?php echo $row2["speciality"];?></option>
但是问题又来了,while 循环正在从数据库中获取相同的选项,因此它变得重复,我想要的是从 while 循环的选定选项中删除选定的选项。
谁能帮忙?
完整代码:
<?php
$id = $_GET['id'];
$result = mysqli_query($con, "SELECT * FROM patient WHERE id = $id");
$rows = mysqli_num_rows($result);
$result2 = mysqli_query($con, "SELECT * FROM surgery_team WHERE p_id = $id");
$rows2 = mysqli_num_rows($result2);
while($patient = mysqli_fetch_assoc($result)) {
$speciality = $patient['speciality'];
}
}
$result2 = mysqli_query($con,"SELECT *
FROM speciality
WHERE id = $speciality");
$row2 = mysqli_fetch_array($result2);
?>
<div class="col-6">
<label class="control-label">Speciality</label>
<select name="speciality" class="form-control" id="category-dropdown">
<option value=""><?php echo $row2["speciality"];?></option>
<?php
$result = mysqli_query($con,"SELECT *
FROM speciality
WHERE parent_id = 0");
while($row = mysqli_fetch_array($result)) {
?>
<option value=""><?php echo $row["speciality"];?></option>
<?php
}
?>
不要将 2 份副本扔到列表中,只需将选中的一份作为下拉列表中的选定项即可。
<div class="col-6">
<label class="control-label">Speciality</label>
<select name="speciality" class="form-control" id="category-dropdown">
<?php
$result = mysqli_query($con,"SELECT *
FROM speciality
WHERE parent_id = 0");
while($row = mysqli_fetch_array($result)) {
$attr = $row2["speciality"] == $row["speciality"] ? "selected='selected'" : '';
echo "<option $attr value='$row[speciality]'>$row[speciality]</option>";
}