2011-05-17 64 views
2

我有一個存儲名稱的數據庫。我有我的數據庫查詢工作,但可以說我有5個名稱,我想要在下拉菜單中顯示。如何使下拉菜單中的默認文本顯示這5個名稱?在下拉菜單中顯示來自SQL數據庫的數據

基本上,我試圖做到的是:

查詢我的數據庫和所有客戶的名字存儲到一個變量。假設數據庫中有5個名字,我需要將這5個名字存儲在一個變量中。然後我的下拉菜單,通常我把文字是這樣的:<選項>單樓< /選項>

但我怎麼得到那些5名出現在下拉列表中?

+0

我對PHP不太熟悉,但是應該可以將從數據庫返回的數據集與下拉列表控件綁定。希望這可以幫助! – lhan 2011-05-17 15:53:11

回答

5

下面是一個簡單的僞腳本,從數據庫中選擇信息,並輸出一個選擇下拉框。您將需要使用DB Schema中的相應字段名稱替換*_fetch_array與您正在使用的任何數據庫擴展,以及$row['Value']$row['DisplayValue']

<select name = 'iAmASelect' id = 'iAmaASelect'> 
<?php 
    $DB_Rows = /* fetch data from database */; 
    while($row = *_fetch_array($DB_Rows)) 
     echo("<option value = '" . $row['Value'] . "'>" . $row['DisplayValue'] . "</option>"); 
?> 
</select> 

的選擇將提交$row['Value']到表單處理,同時顯示$row['DisplayValue']在下拉列表中的用戶。

+0

如果'value'部分是非數字的,最好通過'htmlspecialchars()'來傳遞,這樣任何嵌入的引號都不會「破壞」表單。 – 2011-05-17 16:03:34

+0

@Marc B:同意,謝謝你清理我的監督:) – 2011-05-17 16:10:08

1

如果我理解正確,您需要一個選擇框,其中第一個選項包含所有名稱,每個名稱也是一個選項。

或者將你的數組打到一個字符串中。

或使用for(each)循環。

$string =''; 
foreach($rows as $k=>$names){ 

    $string.=$names.' '; 

} 
$string =trim($string). 

HTML:

<select> 
    <option value='0' selected="selected"> <?=$string;?> </option> 
    ## loop your names as options. 
</select> 
0
Just using the following code : 

<select name="shipDec" id="shipDec"> 
    <?php 
    for($i=0;$i<=200;$i++) 
    { 
     echo "<option value='".$i."'"; 
     if($shipDec==$i) 
     { 
     echo 'selected="selected"'; 
     } 
     echo ">".$i."</option>"; 
    } 

    ?> 
     </select> 
相關問題