PHP显示基于值选择的下拉列表

时间:2013-06-20 07:21:25

标签: php select drop-down-menu

我想显示一个来自数据库的值的下拉列表。

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

在PHP / Mysql中从数据库中读取一个值,让我们说“CPA”,如何选择显示此选项?

7 个答案:

答案 0 :(得分: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>

答案 1 :(得分:1)

您搜索

<option selected>CPA</option>

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

答案 2 :(得分: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>

答案 3 :(得分: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>

答案 4 :(得分:0)

您需要使用selected HTML标记中的<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>';

?>

答案 5 :(得分:0)

选中添加到您要选择的选项中。

像:

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

构建上面的列表时,对于每个选项,检查它是否是数据库中的选项。如果是,则添加已选择

答案 6 :(得分:0)

以此为例。

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