如何在PHP页面中创建简单的分页

时间:2016-12-13 12:22:28

标签: php jquery html pagination

以下是我的代码。

<?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在许多网站中搜索我没有得到确切的答案请帮助我摆脱这个问题。

1 个答案:

答案 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获得的页码。