0

オタクは助けてください、

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  -->`

. よく知られているように、Twitter ブートストラップの最初のスライダー イメージは、読み込みを高速化するためにアクティブなクラスを持たなければなりません。配列から最初のスライダー イメージを選択し、アクティブ クラスを追加する必要がありますが、残りのスライダー イメージはアクティブ クラスなしで同じままです。

誰かが私のコードを台無しにしている場所を教えてもらえますか?

4

1 に答える 1

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>';
} 
于 2013-07-23T00:07:12.957 に答える