php - 使用 PHP 在引导模式中动态创建图像幻灯片

标签 php mysql bootstrap-modal

<div class="modal-body">
    <?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);
        while($r=$qr->fetch_assoc()){ 
    ?>
    <ol class="carousel-indicators">
        <li data-target="#lightbox" data-slide-to="0" class="active"></li>
        <li data-target="#lightbox" data-slide-to="1"></li>
        <li data-target="#lightbox" data-slide-to="2"></li>
    </ol>
    <div class="carousel-inner">
        <div class="item active">
            <img src="../AbaamAdmin/uploads/<?php echo $r['images'];?>" width="900px" height="500px" >
        </div> <!-- /.item active-->
    </div> <!-- /.carousel-inner -->
    <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>
    <?php }} ?>
</div><!-- /.modal-body -->

我正在尝试以幻灯片形式在引导模式中显示来自数据库的图像。但是在执行上面的代码之后,我得到的是,所有图像都出现在模态内,但是左右图标都不起作用,而不是使用 y 滚动查看图像。

我无法找出错误。

最佳答案

@Ashwini Agarwal 解决方案是部分的,要显示图像指示器和图像,它不能那样做,因为不能运行 while 循环两次,所以工作解决方案是在循环之前创建数组,将获取的数据加载到数组,然后对 indicators 和显示 images 使用 foreach 函数,还使用 ​​ 处理 active 类计数器

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

现在 Modal Body 中的 Carousel 看起来像这样(用注释解释以了解这是如何工作的)

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

关于php - 使用 PHP 在引导模式中动态创建图像幻灯片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33564084/

相关文章:

php - 使用 php 从 mysql 检索后无法将值作为数组返回

javascript - 如何将变量传递给 bootstrap 模式表单并运行 mysql 查询

mysql - 选择多列,其中一列中的数据不能重复

MySQL:根据多行中的值选择数据

java - 在 MYSQL 查询中传递空白/非空变量(使用 Java)

javascript - Bootstrap 模式关闭后如何重新加载页面

javascript - 如何通过 mysql 数据选中/取消选中模式中的单选按钮?

php - while循环与PHP/MYSQL插入语句

php - 如何测试 ZF2 服务

php - 我在搜索过程中只得到一个结果,