0

我想显示为来自数据库的某些值选择的下拉列表。

    <select name="plans">
       <option>MAP</option>
       <option>CP</option>
       <option>CPA</option>
       <option>CPF</option>
    </select>

从 PHP/Mysql 的数据库中读取一个值,比如说“CPA”,我如何显示这个选项被选中?

4

7 回答 7

6

您需要使用 中的selected属性HTML

例如,如果您从数据库中获得的值被分配给一个变量,比如说$val

然后你可以这样做:

<select name="plans">
       <option <?php echo ($val == 'MAP')?"selected":"" ?> >MAP</option>
       <option <?php echo ($val == 'CP')?"selected":"" ?> >CP</option>
       <option <?php echo ($val == 'CPA')?"selected":"" ?> >CPA</option>
       <option <?php echo ($val == 'CPF')?"selected":"" ?> >CPF</option>
 </select>
于 2013-06-20T07:24:30.903 回答
1
$row->will contain the name of plans after query execution 

<select name="plans">
       <option value="MAP" <?php if($row['plans']=="MAP") echo selected;?>>MAP</option>
       <option value="CP" <?php if($row['plans']=="CP") echo selected;?>>CP</option>
       <option value="CPA">CPA</option>
       <option value="CPF">CPF</option>
    </select>
于 2013-06-20T07:27:04.710 回答
1

试试这个作为例子。

//$val = Value from database;

<select name="plans">
       <option <?php if(isset($val) && $val=="1") {?> selected="selected"<?php } ?> value="1" >MAP</option>
       <option <?php if(isset($val) && $val=="2") {?> selected="selected"<?php } ?> value="2" >CP</option>
       <option <?php if(isset($val) && $val=="3") {?> selected="selected"<?php } ?> value="3" >CPA</option>

 </select>
于 2013-06-20T07:29:43.347 回答
1

你搜索

<option selected>CPA</option>

我建议您通读一些 HTML 初学者指南。

于 2013-06-20T07:25:16.693 回答
0

selected放入您要选择的选项中。

喜欢:

<select name="plans">
   <option>MAP</option>
   <option>CP</option>
   <option selected>CPA</option>
   <option>CPF</option>
</select>

当您构建上述列表时,您会检查每个选项是否是数据库中的选项。当它是时,你添加selected

于 2013-06-20T07:27:30.413 回答
0

像这样试试

<select name="plans">
   <option <?php echo ($value == "MAP")?"selected":"" ?> >MAP</option>
   <option <?php echo ($value == "CP")?"selected":"" ?> >CP</option>
   <option <?php echo ($value == "CPA")?"selected":"" ?> >CPA</option>
   <option <?php echo ($value == "CPF")?"selected":"" ?> >CPF</option>
</select>
于 2013-06-20T07:26:28.433 回答
0

您需要在HTML 标记中使用该selected属性。<option>

完整代码:

<?php

    $dbValue = 'CPA';

    $options = array
    (
        'MAP' => 'MAP',
        'CP' => 'CP',
        'CPA' => 'CPA',
        'CPF' => 'CPF'
    );

    echo '<select name="plans">';

    foreach ($options as $value => $option)
    {
        $selected = $value == $dbValue ? 'selected="selected"' : '';
        echo "<option {$selected} value=\"{$value}\">{$option}</option>";
    }

    echo '</select>';

?>
于 2013-06-20T07:26:36.980 回答