2015-11-28 42 views
-1

下拉列表數據不顯示,我在數據庫中輸入PHP MySQL的傾斜讀取數據庫

Product Category: 
<select name="product_cat"> 
    <option>Select a Category</option> 
    <?php 
    $get_cats = "select * from categories"; 
    $run_cats = mysqli_query($con, $get_cats); 
    while ($row_cats=mysqli_fetch_array($run_cats)){ 
     $cat_id = $row_cats['cat_id']; 
     $cat_title = $row_cats['cat_title']; 
     echo "<option>$cat_title</option>"; 
     } 
     ?> 
    </select> 
+0

你現在越來越$ cat_title?如果是這樣,請將其改爲回顯「」; –

回答

0

嘗試下面的代碼中的數據:

<select name="product_cat"> 
    <option value="">Select a Category</option> 
    <?php 
     $get_cats = "select * from categories"; 
     $run_cats = mysqli_query($con, $get_cats); 
     while ($row_cats=mysqli_fetch_array($run_cats)){ 
     //$cat_id = $row_cats['cat_id'];  // no need to put in another variable 
     //$cat_title = $row_cats['cat_title']; // no need to put in another variable 
     echo "<option value='".$row_cats['cat_id']."'>".$row_cats['cat_title']."</option>"; 
     } 
    ?> 
</select> 
+0

被移除的變量只是變化嗎?它也應該以原來的方式工作,我認爲它更具可讀性。 – TuomasK

+0

如果你想,那麼你會像你一樣分配新的變量。但這是時間和空間消耗。 @TuomasK – SHAZ

+0

但它不會以任何方式影響輸出。所以這並不能解決問題。 @SHAZ – TuomasK

0

你只需要改變你的,而從這個循環:

while ($row_cats=mysqli_fetch_array($run_cats)){ 

要這樣:

while ($row_cats=mysqli_fetch_row($run_cats)){ 

mysqli_fetch_array()返回數組中的表的所有行。您需要將其存儲在一個變量中並進行foreach循環。

mysqli_fetch_row()一次只返回一行。如果所有行都已被提取,它也會返回false,所以你可以在while循環中使用它,就像你一樣。

0
<label for='product_cat'>Product Category: 
    <select name='product_cat'> 
     <optgroup label='Select a Category'> 
      <option selected='selected' disabled='disabled' hidden='hidden'>Select a Category 
      <?php 
       $sql='select * from `categories`'; 
       $res=mysqli_query($con, $sql); 
       if($res){ 
        while($rs=mysqli_fetch_object($res)){ 
         echo "<option value='{$rs->cat_id}'>{$rs->cat_title}"; 
        } 
       } 
       mysqli_free_result($res); 
       $con->close(); 
      ?> 
     </optgroup> 
    </select> 
</label> 
-1
<html> 
    Product Category: 
    <?php $get_cats="SELECT * FROM categories"; $run_cats=mysqli_query($con,$get_cats);?> 
    <select name="product_cat"> 
     <option>Select a Category</option> 
     <?php while ($row_cats=mysqli_fetch_assoc($run_cats)){?> 
      <option value="<?php echo $row_cats['cat_id'];?>"><?php echo $row_cats['cat_title']; ?></option> 
     <?php } ?> 
    </select> 
</html>