2014-06-27 61 views
0

我想从下面的代码填充html下拉列表。我在这里搜索了其他问题,并尝试过,但它不适合我吗?任何人都可以帮我找到我的错误吗?使用从数据库中的数组填充html下拉菜单php

<form id="data" class="form-geofence" role="form" method="post" action="geofencedata.php"> 
       <select name="category_id"> 
        <option value="">--- Select ---</option> 
        <?php 
         include_once'./connectionusers.php'; 
         $result=pg_query("SELECT * FROM geofence;"); 
         while ($row = pg_fetch_array($result)) { 
        ?> 
        <option value="" ><?php echo $row["name"];?></option> 
        <?php 
          } 
        ?> 
       </select> 

我已分别使用相同的PHP代码,它表明你错过呼应的期权价值,这可能是你的问题的名称

+0

它不显示任何options.it应该显示从我的数据库table.And也是我的名字,还通过设置尝试值 –

回答

0

确保您的数据库连接是正确的,下面的代码使用

<form id="data" class="form-geofence" role="form" method="post" action="geofencedata.php"> 
      <select name="category_id"> 
       <option value="">--- Select ---</option> 
       <?php 
        include_once'./connectionusers.php'; 
        $result=pg_query("SELECT value FROM geofence;"); 
        while ($row = pg_fetch_array($result)) { 
        echo "<option value='".$row['value']."'>".$row['value']."</option>"; 
         } 
       ?> 

      </select> 
+1

我发现这个错误。我已经将文件保存在html中,所以我将其更改为php –

0
<form id="data" class="form-geofence" role="form" method="post" action="geofencedata.php"> 
       <select name="category_id"> 
        <option value="">--- Select ---</option> 
        <?php 
         include_once'./connectionusers.php'; 
         $result=pg_query("SELECT * FROM geofence;"); 
         while ($row = pg_fetch_array($result)) { 
        ?> 
        <option value="<?php echo $row["name"];?>" ><?php echo $row["name"];?></option> 
        <?php 
          } 
        ?> 
       </select> 

+0

我试过了,它没有工作。只有一个空白选项。 –

+0

然后有从数据库中获取数据的一些问题,尝试打印结果数组,或删除下拉并回显'$行['名称'];'我试过了' – Vignesh

+0

,它没有显示任何选项数据库。如果我在不同的文件中运行php代码,它会显示名称 –

0
function category_dropdown($selected=""){ 

    $open_tag=$close_tag=$option_tag=$selected_class=""; 
    $open_tag="<select name='category_id' id='category_id'>"; 
    $option_tag.="<option value="">--- Select ---</option>"; 
    $close_tag="</select>"; 


    include_once('./connectionusers.php'); 
    $result=pg_query("SELECT * FROM geofence;"); 
    while ($row = pg_fetch_array($result)) { 
     $selected_class=($selected==$row["name"])?" selected='selected' ":""; 
     $option_tag.="<option value='".$row["name"]."' ".$selected_class.">".$row["name"]."</option>"; 
    } 
    return $open_tag.$option_tag.$close_tag; 
} 
0

尝试这种

<select name="case_type" style="width:250px"> 
<option>select</option> 
<?php 
$sql="select case_type_code,case_type_name from case_type_master where display='Y' 
         order by case_type_name asc"; 
foreach($dbh->query($sql) as $row) 
{ 
$casetypecode=$row['case_type_code']; 
if($case_type == $casetypecode) 
      { 
print "<option value=".$row['case_type_code']."selected>".$row['case_type_name'] 
     . "</option>"; 
      } 
     else 
      { 
      print "<option value=".$row['case_type_code'].">" 
      .$row['case_type_name']."</option>"; 
    } 
    } 
    ?> 

    </select> 

我相信它的工作原理。 :)

0

这是您更正的代码您错过了打印价值。

<form id="data" class="form-geofence" role="form" method="post" action="geofencedata.php"> 
      <select name="category_id"> 
       <option value="">--- Select ---</option> 
       <?php 
        include_once'./connectionusers.php'; 
        $result=pg_query("SELECT * FROM geofence;"); 
        while ($row = pg_fetch_array($result)) { 
       ?> 
       <option value="echo $row["code"];" ><?php echo $row["name"];?></option> 
       <?php 
         } 
       ?> 
      </select> 
相关问题