sql >> データベース >  >> RDS >> Mysql

PHPを使用して動的にブートストラップモーダル内の画像のスライドショーを作成する

    @Ashwini Agarwalソリューションは部分的であり、画像インジケーターと画像の両方を表示するには、whileループを2回実行できないため、そのように行うことはできません。したがって、実用的なソリューションは、ループの前に配列を作成し、フェッチしたデータを配列にロードしてから、 foreachを使用する 両方のindicatorsの関数 imagesを表示します activeも処理します counterのクラス

    PHPコード

    <?php 
    $id=$_GET['id'];
    $qry="select rel_movies from released_movies where rel_id='$id' ";
    $qryr=$con->query($qry);
    while($rr=$qryr->fetch_assoc()){
        $film=$rr['rel_movies'];
        $q="select * from gallery where category='$film'";
        $qr=$con->query($q);
        $rows = array(); //Declare rows as arrays before loop
        while($r=$qr->fetch_assoc()){ //Run Loop
            $rows[] = $r; //Load Data in arrays
        } //close Loop
    } //close First Loop, Side Note, You don't need This Loop
    ?>
    

    これで、モーダルボディ内のカルーセルは次のようになります(これがどのように機能するかを理解するためのコメントで説明されています)

    <div class="modal-body">
    <div id="lightbox" class="carousel slide" data-ride="carousel">
        <ol class="carousel-indicators">
                <?php
                    $i = 1; //Counter
                    foreach ($rows as $r): //Foreach
                    $ol_class = ($i == 1) ? 'active' : ''; //Set class active for only indicator which belongs to respective Image
                ?>
                 //Here I add the counter to data-slide attribute and add class to indicator
                <li data-target="#lightbox" data-slide-to="<?php echo $i;?>"  class="<?php echo $ol_class; ?>"></li>
                <?php $i++; ?>
                <?php endforeach; ?> //Close Foreach
        </ol>
        <div class="carousel-inner">
                <?php
                $i = 1; //Counter
                foreach ($rows as $r): //Foreach
                $item_class = ($i == 1) ? 'item active' : 'item'; //Set class active for image which is showing
                ?>              
                <div class="<?php echo $item_class; ?>"> // Define Active Class Here
                    <img src="../AbaamAdmin/uploads/<?php echo $r['images'];?>" width="900px" height="500px" >
                </div>
                <?php $i++; ?>
                <?php endforeach; ?> // Close Foreach
        </div>
        <a class="left carousel-control" href="#lightbox" role="button" data-slide="prev"><span class="glyphicon glyphicon-chevron-left"></span></a>
        <a class="right carousel-control" href="#lightbox" role="button" data-slide="next"><span class="glyphicon glyphicon-chevron-right"></span></a>
    </div>
    </div>
    


    1. MySQLは2つのクエリを組み合わせる

    2. SQLクエリを高速化する方法は?インデックス?

    3. LaravelRawDBインサートの影響を受ける行

    4. mysqlクエリが必要