【问题标题】:PHP MySQL - Dynamic page with Carousel , imagesPHP MySQL - 带有轮播,图像的动态页面
【发布时间】:2019-05-30 14:56:50
【问题描述】:

我想制作一个动态页面,现在我拥有的是一个数据库,在该数据库中只插入了图像,现在我可以获取图像和视频,但是我插入了另一个图像,我想将其插入轮播我该怎么做?

这是我的数据库

我已经获取了id 1,但来自id 2-3 的图像的其余部分未在轮播中获取。我想要的只是获取轮播上的剩余图像。我该怎么做谢谢。

<?php
  $data = mysqli_query($con,"SELECT * FROM pax_safeties WHERE id='1'");
    $count = mysqli_num_rows($data);
    if ($count != 0) {
      while($row = mysqli_fetch_array($data)) {
         echo '<div class="tab-pane" id="tabs-5" role="tabpanel"><br>
<div class="container-fluid">
<div class="row">
<div class="col-6 col-md-6">
<a data-toggle="modal" data-target="#basicExample" target="_blank">

<img src="images/pal/'.$row['paxsafety_image'].'" width="100%">

<div class="modal fade" id="basicExample" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
 <div class="modal-dialog" role="document">
  <div class="modal-content">

<!--------------------CAROUSEL INSERT IMAGES WITH NULL VALUES  ---------------------------------------------------------------------------->

   <div id="carousel-example-11z" class="carousel slide carousel-fade" data-ride="carousel">
    <ol class="carousel-indicators">
     <li data-target="#carousel-example-11z" data-slide-to="0" class="active"></li>
     <li data-target="#carousel-example-11z" data-slide-to="1"></li>
    </ol>
    <div class="carousel-inner" role="listbox">
     <div class="carousel-item active">
      <img class="d-block w-100" src="images/pal/safety.jpg" alt="First slide">
     </div>

    </div>
    <a class="carousel-control-prev" href="#carousel-example-11z" role="button" data-slide="prev">
     <span class="carousel-control-prev-icon" aria-hidden="true"></span>
     <span class="sr-only">Previous</span>
    </a>
    <a class="carousel-control-next" href="#carousel-example-11z" role="button" data-slide="next">
     <span class="carousel-control-next-icon" aria-hidden="true"></span>
     <span class="sr-only">Next</span>
    </a>
   </div>
<!--------------------END OF CAROUSEL INSERT IMAGES WITH NULL VALUES  ---------------------------------------------------------------------------->
  </div>
 </div>
</div>
</a>
</div>
<div class="col-6 col-md-6">
<img class="watch-video" src="images/pal/safetyvid.jpg" width="100%"> 
  <video oncontextmenu="return false;" class="embed-responsive-item" id="video" allowscriptaccess="always" width="0%" controls controlsList="nodownload">

  <source src="images/pal/'.$row['paxsafety_video'].'" type="video/mp4" width="0%">

  </video>
</div>
</div>
</div>
</div>';
        }

      }
?>

【问题讨论】:

    标签: php mysql sql dynamic


    【解决方案1】:

    您的查询包含WHERE id='1',因此它只会获取该图像和视频。如果你想得到更多的结果,你需要改变它;要么删除它以获取 all 结果,或者可能类似于

    WHERE id IN (1, 2, 3)
    

    $data = mysqli_query($con,"SELECT * FROM pax_safeties WHERE id IN (1, 2, 3)");
    

    如果您想显示所有图像和视频,只需完全删除WHERE 条件,即

    $data = mysqli_query($con,"SELECT * FROM pax_safeties");
    

    但是这可能会在将来给您太多结果,因此您最终可能需要某种形式的 WHERE 子句,或者可能需要一个 LIMIT 子句来限制返回的结果数量,例如

    $data = mysqli_query($con,"SELECT * FROM pax_safeties LIMIT 10");
    

    【讨论】:

    • 感谢您提供的信息,但如果我要添加更多图片怎么办?那么WHERE id IN(1,2,3) 将不实用.. :( 有没有办法自动添加图像,以便轮播动态添加图像而不在 equery 中插入 id 1,2,3
    • @obitouchiha 我只是以它为例。如果您删除WHERE 子句,它将返回表中的所有图像,但是您可能会遇到图像过多的问题。查看我的编辑。
    • 好的,请帮我解决这个先生最后一个问题,如果我只想获得第一行 ID,我该怎么做? $row['paxsafety_image'] 假设我想获取 id 1 的图像,并且我的查询被选中了所有
    • 如果您只想获取第一行(我假设这具有最小 id),您可以使用 SELECT * FROM pax_safeties ORDER BY id ASC LIMIT 1
    • 不,我的意思是可以这样吗? $row['paxsafety_image'][1] ?
    猜你喜欢
    • 2019-09-23
    • 1970-01-01
    • 1970-01-01
    • 2022-01-20
    • 1970-01-01
    • 1970-01-01
    • 2016-08-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多