Я использую 2 вида выпадающих списков. Да/Нет и один с несколькими значениями. В любом случае я использую это:правильный способ сохранения раскрывающегося списка в php
<select id="active">
<option value="0">No</option>
<option value="1">Yes</option>
</select>
или
<select id="active">
<option value="1">Choice 1</option>
<option value="2">Choice 2</option>
<option value="3">Choice 3</option>
<option value="4">Choice 4</option>
</select>
Значение Да/Нет я храню как немного (как до TINYINT) в моей MySQL-БД. Множественный выбор я храню как int. я получаю значение из моего объекта $ элемента и попытаться выбрать правильное значение:
<option value="0" <?php echo $member->active == 0 ? 'selected="selected"' : 'selected="unselected"'; ?>>Yes</option>
<option value="1" <?php echo $member->active == 1 ? 'selected="selected"' : 'selected="unselected"'; ?>>Yes</option>
Это прекрасно работает, когда у меня есть множественный выбор, хранящийся в междунар но не с Да/Нет хранятся как бит или TINYINT ,
Что я делаю неправильно? Значение $ member-> active является правильным. Я знаю, что Да/Нет может быть сделано с помощью флажка, но я не буду сначала разбираться.
Thx
'=' - оператор присваивания. Вы должны использовать '==' для проверки равенства. – andrewsi
Выбранная опция 'selected =' не определена, так как в противном случае входы будут отменены по умолчанию. –