2011-05-17 41 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> 
相关问题