Тот факт, что это поле перечисления, не имеет большого значения при создании полей выбора (выпадающих). Поля перечисления ведут себя так же, как поля ввода текста, они просто отклоняют любые данные, которые не соответствуют параметру перечисления, и сохраняют данные более эффективно. Таким образом, взаимодействие с полем enum аналогично взаимодействию с полем ввода текста.
Так что вам понадобится обычное поле выбора html:
<form>
<select name="gender">
<option value="Unspecified">Unspecified</option>
<option value="Male">Male</option>
<option value="Female">Female</option
</select>
</form>
И вам нужно будет выбрать свое значение:
<form>
<select name="gender">
<option value="Unspecified" <?php if($gender == "Unspecified") { echo "SELECTED"; } ?>>Unspecified</option>
<option value="Male" <?php if($gender == "Male") { echo "SELECTED"; } ?>>Male</option>
<option value="Female" <?php if($gender == "Female") { echo "SELECTED"; } ?>>Female</option
</select>
</form>
Это можно разбить на функции:
function gender_select($default_value='') {
$select = '<select name="gender">';
$options = array('Unspecified','Male','Female',);
foreach($options as $option) {
$select .= write_option($option, $option, $default_value);
}
$select .= '</select>';
return $select;
}
function write_option($value, $display, $default_value='') {
$option = '<option value="'.$value.'"';
$option .= ($default_value == $value) ? ' SELECTED' : '';
$option .= '>'.$display.'</option>';
return $option;
}
Итак, ваш окончательный код будет:
<form>
<?php echo $gender_select($gender); ?>
</form>