以下是我的代码。
<?php
$folder_name=$_GET['folder_name'];
$dirname = "customized_kits/images/";
$images = glob($dirname."*");
$filecount = count( $images );
$i=0;
for($i=0;$i<200;$i++) { ?>
<div class="col-md-2"> <div class="photos">
<div id="images1">
<a href=# data-lightbox="roadtrip">
<?php
if($filecount>$i) {
$filename = substr($images[$i], strrpos($images[$i], '/') + 1);
echo '<a href="'.$images[$i].'" target="_blank"><img src="'.$images[$i].'" style="width:150px;height:150px" /></a><br/>';
?>
<a href="#" class="del_photo1" style="color:#C20B0B;font-size:20px;" onclick="theFunction('<?php echo $filename; ?>','<?php echo $folder_name; ?>');"><i class="fa fa-remove"></i></a>
<?php } else {
echo '<a ><img style="width:150px;height:150px;background-color:#eee" /></a>';
} ?>
</div>
</div>
</div>
<?php } ?>
在这里我用foreach循环创建了200个盒子我希望显示单个页面的20个div,并且在分页的帮助下我想要显示其他divs.I在许多网站中搜索我没有得到确切的答案请帮助我摆脱这个问题。
答案 0 :(得分:1)
好的,从您的代码中可以得到200个$i
值,并且您希望将它们分成20个部分。让我们从代码上方添加一个脚本开始,以获取需要显示的范围。页码在数字中作为GET
参数。前example.com/feeds?number=2
。
<?php
$pageno = $_GET['number']; // Page number from frontend
// Now this value will give you 1,2,3 etc
$start = $pageno*20;
// $start contains the initial offset or the value of `$i` from to start
for($i=$start;$i<$start+20;$i++) {
// Will only show 20 elements on the page
}
?>
请记住,这是一个非常基本的例子。虽然我建议在sql
查询中使用范围,但您不必在每个查询中加载完整的数据集。
假设您有M
个结果,并且想要在每个页面上显示N
个结果,页面x
上的结果将从x*N
开始到x*(N+1)
纯数学在这里。在您的代码中,您在整个循环中迭代$i
,而只是迭代该特定范围以获得结果。 x
的值就是我们在number
动词中从GET
获得的页码。