在PHP中保存下拉列表的正确方法

时间:2013-09-25 14:03:04

标签: php select option bit

我正在使用2种下拉菜单。是/否和具有多个值的一个。 无论哪种方式,我都使用它:

<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>

我的mysql-db中的Yes / No I的值作为一点(在tinyint之前)存储。我选择存储为int的多项选择。 我从对象$ member中获取值并尝试选择正确的值:

<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>

当我将多项选择存储为int而不是将Yes / No存储为bit或tinyint时,这非常有效。

我做错了什么? $ member-&gt; active的值是正确的。 我知道是/否可以使用复选框,但我不会先解决这个问题。

THX

1 个答案:

答案 0 :(得分:1)

提供答案并假设您已经加载了适当的数据并将其存储到任何类/对象$ member中。

<option value="0" <?php echo $member->active == 0 ? 'selected="selected"' : ''; ?>>No</option>
<option value="1" <?php echo $member->active == 1 ? 'selected="selected"' : ''; ?>>Yes</option>