В форме профиля редактирования Я хочу отобразить выбранное значение раскрывающегося списка Country как значение, сохраненное в db, и пользователь также может изменить это.выпадающее меню выбранное значение из базы данных
ответ
вам необходимо установить выбранный атрибут:
UPDATE
<? $countries = array(/* Array of countries */); ?>
<select name="country">
<? foreach($countries as $c): ?>
<option<?= $c == $country ? ' selected="selected"' : '' ?>><?= $c ?></option>
<? endforeach; ?>
</select>
@aSeptic: Это именно то, как это сделать. Для 30 дополнительных опций у вас есть массив с этими параметрами и можно пройти через него! Первый пример был просто коротким. – jigfox
второй в порядке! ;-) –
Я сделал свой первый пример без массива, потому что «ramukaka» не размещал никакого кода, и я не хотел делать много предположений, как это может выглядеть – jigfox
<select id="user" name="user[sex]" >
<option value="male" <?php $sex == "male" ? "selected" : '' ?>>Male</option>
<option value="female" <?php $sex == "female" ? "selected" : '' ?>>Female</option>
</select>
echo "<select name='cmbCountry'>";
while($country = mysql_fetch_array($countries)){
echo "<option value='".$country["id"]."'".($country["id"] == $profile["idCountry"]) ? " selected='selected'" : "".">".$country["name"]."</option>"
}
echo "</select>";
слегка расширенная версия ответа Йенса - облегчает добавление новых опций :
<?php $countries = array('USA', 'Kanada', 'Mexico'); ?>
<select name="country">
<?php foreach ($countries as $c): ?>
<option<?php $country == $c ? ' selected="selected"' : ''; ?>>$c</option>
<?php endforeach; ?>
</select>
Это желание, а не вопрос. Какая у вас проблема с этим и какой код вы написали? – Palantir
Прямо сейчас это не имеет никакого отношения к PHP – jigfox
@Patantir you dumbo – ramukaka