在行和列中显示来自php的mysql中的图像

时间:2013-12-24 13:48:56

标签: php mysql

我需要在我的图库中显示来自mysql的图像。我有一个响应式模板。我在我的mysql中有大约40个图像我想获取图像并在每行4列的图库视图中显示它,它应该转到下一组

这是我的html库代码

<ul class="row box2">
       <li class="span4">
       <img></img>
       </li>
       <li class="span4">
       <img></img>
       </li>
       <li class="span4">
       <img></img>
       </li>
       <li class="span4">
       <img></img>
       </li>
</ul>

所以上面是我的代码我需要重复这个代码为我使用PHP从Mysql显示的每4个图像,以便我可以形成一个画廊

请帮助我为每四张图片循环播放这张照片,这样我就可以在每列10行4中删除所有40张图片

提前致谢

3 个答案:

答案 0 :(得分:0)

使用array_chunk将主阵列与所有图像分成4个图像的小阵列

例如:

$mainArray;// here the value of all images from db
$resultArray = array_chunk($mainArray, 4); //now you have arrays which include 4 images

然后使用foreach根据需要构建块

<?php    foreach ($resultArray as $minArray){ ?>
   <ul class="row box2">
     <?php foreach ($minArray as $array){ ?>
       <li class="span4">
       <img><?php echo $array['img']?></img>
       </li>           

     <?php  } ?>
  </ul>
<?php  } ?>

答案 1 :(得分:0)

你可以这样做

$i=0;
while = ($row = mysql_fetch_row($resource)){
    if($i==0){
        ?><ul class="row box2"><?php
    }
    ?>
    <li class="span4"><img src='<?php echo $row['image']?>'></img></li>
    <?php
    $i++;
    if($i==4){
        ?></ul><?php
        $i=0;
    }
}

答案 2 :(得分:0)

我不确定我是否理解你的任务正确但你可以使用for循环。这是你想要的吗?

var x;
var y = 1;
for (var i=0;i<10;i++)
{ 
x = x + '<ul class="row box' + i + '">
       <li class="span4">
       <img> '+ imageArray[y] +' </img>
       </li>
       <li class="span4">
       <img> '+ (imageArray[y] +1) +'</img>
       </li>
       <li class="span4">
       <img>'+ (imageArray[y] + 2) +' </img>
       </li>
       <li class="span4">
       <img>'+ (imageArray[y] + 3) +'</img>
       </li>
</ul>';

y++;

}