2013-07-22 78 views
0

極客請幫忙,如何使用數組鍵與while循環在php中顯示mysql表數據

我有一個與while循環使用數組鍵的問題。

我試圖用這個代碼從數據庫循環顯示Twitter的引導滑塊圖片:

<div id="slider"> 
     <!--Code for make home images slide show--> 
       <div id="myCarousel" class="carousel slide"> 

       <!-- here comes the engine to run the sliders --> 
       <?php 

       $query = 'SELECT * FROM banners WHERE status = 1 ORDER BY id ASC'; 

      ?> 

        <div class="carousel-inner"> 
         <?php 
         if ($r = mysql_query($query , $conn)) { //run the query 
         $row = mysql_fetch_array($r); 
         reset($row); 

       while (list($key, $value) = each($row)) { 
        if ($key == 0) { ?> 
         <div class="item active"> 
        <img src="images/homeimages/<?php echo $value['image'];?>" alt="<?php echo $value['title'];?>"> 
        <!-- <img src="images/homeimages/one.jpg" alt=""> --> 
        <div class="carousel-caption"> 
         <!-- <h4>First Thumbnail label</h4> --> 
         <p><i><?php echo $value['title'];?></i></p> 
        </div> 
        </div> 
        <?php }else{ ?> 

         <div class="item"> 
        <img src="images/homeimages/<?php echo $value['image'];?>" alt="<?php echo $value['title'];?>"> 
        <!-- <img src="images/homeimages/one.jpg" alt=""> --> 
        <div class="carousel-caption"> 
         <!-- <h4>First Thumbnail label</h4> --> 
         <p><i><?php echo $value['title'];?></i></p> 
        </div> 
        </div> 

        <?php } 

       } 
       }else { 
       print '<p style="color: red;">Could not retrieve the slider:<br />' . mysql_error($dbc) . '.</p>'; 
       } ?> 


       </div> 


       <!-- <a class="left carousel-control" href="#myCarousel" data-slide="prev">&lsaquo;</a> 
       <a class="right carousel-control" href="#myCarousel" data-slide="next">&rsaquo;</a> --> 
       <ol class="carousel-indicators"> 
        <li data-target="#myCarousel" data-slide-to="0" class="active"></li> 
        <li data-target="#myCarousel" data-slide-to="1"></li> 
        <li data-target="#myCarousel" data-slide-to="2"></li> 
       </ol> 
       </div> 


    </div><!-- endof slider -->` 

。 as`it衆所周知,twitter bootstrap的第一個滑塊圖像必須具有活動類才能確保加載速度更快。我需要從數組中選擇第一個滑塊圖像,並將活動類添加到其中,而其他滑塊圖像在沒有活動類的情況下保持不變。

有人能告訴我在哪裏搞亂我的代碼?

+0

爲什麼你不能使用此代碼通過ResultSet迭代:而($行= mysql_fetch_array){//做一些事情在這裏}你仍然可以訪問所有的鍵/值你需要的。 – Maximus2012

+0

可否請您寫下我將如何使用while($ row = mysql_fetch_array){?這是我不知道@ Maximus2012 –

+0

看到我的答案。瞭解mysql_函數不安全並且不推薦使用,但是這仍然可以作爲您的解決方案。稍後,您可以隨時更改您的代碼以使用mysqli/PDO。 – Maximus2012

回答

1

試試這個:

<div class="carousel-inner"> 
<?php 
if ($r = mysql_query($query , $conn)) { 
    $count = 0; 
    while ($row = mysql_fetch_array($r){ 
     if ($count == 0){?> 
      <div class="item active"> 
     <?php} 
     else { ?> 
      <div class="item"> 
     <?php}?> 
     <img src="images/homeimages/<?php echo $row['image'];?>" alt="<?php echo $row['title'];?>"> 
     <div class="carousel-caption"> 
      <p><i><?php echo $row['title'];?></i></p> 
     </div> 
     </div>  
     <?php 
     } 
     $count ++; 
    } 
} 
else { 
    print '<p style="color: red;">Could not retrieve the slider:<br />' . mysql_error($dbc) . '.</p>'; 
} 
+0

謝謝,它的工作@ Maximus2012 –

+0

肯定沒問題。 – Maximus2012