如何在国家/地区下拉列表中显示所选值

How to display selected value in country dropdown list

我正在尝试将数据库中员工的国籍显示到包含所有国家/地区名称的下拉列表中。我有一个单独的页面来存储国家/地区列表并将其包含在编辑页面中。

edit.php:

 <div class="form-group" id="selected_country">
   <label>Nationality</label>
   <?php include ('country.php');?>
 </div>

country.php:

<select class="form-control"id="country" name="country">
  <option> Select country</option>
  <option value="Afghanistan">Afghanistan</option>
  <option value="Åland Islands">Åland Islands</option>
  <option value="Zimbabwe">Zimbabwe</option>
</select>

我已经为另一个在下拉列表中只有两个值的字段编写了类似的代码,但我不熟悉这个长列表。请帮帮我。

这是我的经验,我添加这个仅供参考。我也可以对上述问题做类似的事情吗?或者有其他方法吗?

  <div class="form-group">
    <label>Status</label>
    <select name="emp_edit_status" class="form-control">
      <option value="Active"<?php if($rowEdit['emp_status'] == 'Active') { ?> 
         selected="selected"<?php } ?>> Active</option>
      
      <option value="Inactive" <?php if($rowEdit['emp_status'] == 'Inactive') { 
        ?> selected="selected"<?php } ?>> Inactive</option>

    </select>
   </div>

您的行是正确的,但是如果您完整地输入每个 <option> 行,您的代码将变得相当沉重。

我会选择这样的东西:

// Dummy data. substitute whatever you have for employee data in the 
// foreach loop below
$employee = ['country'=>'United Kingdom'];

$countryList = ["Afghanistan", "Mexico", "New Zealand", "United Kingdom", "United States","Zimbabwe"];

echo '<select name="country">';
echo "<option value='' >Select Country</option>";


foreach($countryList as $country) {
    $sel = ($employee['country'] === $country) ? 'selected' : '';
    echo "<option value='$country' $sel>$country</option>";
}
echo '</select>';