2013-06-20 172 views
0

我想顯示一個下拉列表,選擇某個來自數據庫的值。根據價值選擇的PHP顯示下拉列表

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

在PHP/MySQL的閱讀從數據庫中的值,可以說「CPA」,我怎麼證明這個選項選擇?

+0

你需要給期權價值也是每個選項,那麼你需要檢查每個選項 – Gautam3164

+0

做你的意思是「<選擇name =‘計劃’值=‘<?PHP的回聲‘CPA’?>’> ' –

回答

5

您需要使用HTML中的selected屬性。

例如,如果你從數據庫得到的值賦給變量說$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

它發生了幾次你們?你開始回答一個SO問題,當你幾乎完成時,從另一個偉大的contibrutor出現或多或少相同的答案,花費的時間是一些徒勞的。雖然這是偉大的。迅速而且經常是精確的答案。 – Henkealg

+3

也許我們需要一個工具來查看有多少人正在寫答案。 – abimelex

+0

@Henkealg它發生在我身上很多時間:-) – Prabhuram

1

您搜索

<option selected>CPA</option> 

我建議你閱讀一些HTML初學者指南。

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

有什麼需要downvote它.. ?? – Gautam3164

+2

這是禮貌的原因,以及..... – Gautam3164

+1

它應該是必需的! – abimelex

0

您需要使用selected屬性在<option> HTML標籤。

全碼:在您要選擇的選項中選擇

<?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>'; 

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

放。

像:

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

當你創建上面的列表,每個選項你檢查它是否是一個在數據庫中。當它是,你添加選擇

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> 
相關問題