2015-11-28 43 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>