下拉列表中的重复值

时间:2017-09-06 09:30:53

标签: php

我的更新表单中有一个下拉列表,因此当我选择要更新的行时,该值会自动填入下拉列表中。所以,我想要的是,如果员工现在那么只有缺席应该显示在下拉列表中反之亦然。 这里是代码段:

<td>
  <select name="Status" id="Status" class='form-control' required autofocus>
    <?php
    if (isset($_SESSION["state"])) {
      foreach ($_SESSION['state'] as $states) {
        echo "<option value='$states'>$states</option>";
      }
    }
    ?>
    <option value="Present"<?= $state == "Present" ? ' selected="selected"' : '' ?>> Present </option>
    <option value="Absent"<?= $state == "Absent" ? ' selected="selected"' : '' ?>> Absent </option>
  </select>
</td>    

因此,如果现在出现在会话值中,那么根据下拉列表中只显示缺席

2 个答案:

答案 0 :(得分:1)

你甚至不需要for循环

<?php
if (isset($_SESSION["state"])) {
if($_SESSION['state']=="Present"){
echo "<option value='Absent' selected='selected'>Absent</option>";
}
else
{
echo "<option value='Present' selected='selected'>Present</option>";
}
?>
</select>
</td>    
<?php } ?>

答案 1 :(得分:1)

虽然你想显示其中一个选项,所以使用if语句根据条件选择其中一个如果它存在,那么显示这个,如果不存在则显示一个

<?php
if($state=="Present"){
?>
<option value="Present" selected="selected"> Present     </option>
<?php
}
else{
?>
 <option value="Absent" selected="selected"> Absent   </option>
<?php
}
?>
相关问题