2014-06-27 63 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> 
相關問題