PHP实现分页

<?php
    header("Content-type:text/html;charset=utf-8");
    $page=isset($_GET['page'])?intval($_GET['page']):1;       //这句就是获取page=18中的page的值,假如不存在page,那么页数就是1。
    $num=10;         //每页显示10条数据
    $db=mysqli_connect("localhost","root","");           //创建数据库连接
    mysqli_query($db,"set names utf8");
    $select=mysqli_select_db($db,"biocommunity");                 //选择要操作的数据库
    /*
    首先咱们要获取数据库中到底有多少数据,才能判断具体要分多少页,总页数 具体的公式就是
    总数据数 除以 每页显示的条数,有余进一 。
    也就是说10/3=3.3333=4 有余数就要进一。
    */
    $total=mysqli_num_rows(mysqli_query($db,"select * from filedata")); //查询数据的总数total
    $pagenum=ceil($total/$num);      //获得总页数 pagenum
    //假如传入的页数参数apge 大于总页数 pagenum,则显示错误信息
    If($page>$pagenum || $page == 0){
           Echo "Error : Can Not Found The page .";
           Exit;
    }
    $offset=($page-1)*$num;         //获取limit的第一个参数的值 offset ,假如第一页则为(1-1)*10=0,第二页为(2-1)*10=10。             (传入的页数-1) * 每页的数据 得到limit第一个参数的值
    $info=mysqli_query($db,"select * from filedata limit $offset,$num ");   //获取相应页数所需要显示的数据
    While($it=mysqli_fetch_array($info)){
           Echo "filename=".$it['name'].' path= '.$it['path']."<br />";
    }                                                              //显示数据

    For($i=1;$i<=$pagenum;$i++){

           $show=($i!=$page)?"<a href='down_load?page=".$i."'>$i</a>":"<b>$i</b>";
           Echo $show." ";
    }
    /*显示分页信息,假如是当页则显示粗体的数字,其余的页数则为超连接,假如当前为第三页则显示如下
    1 2 3 4 5 6
    */

      mysqli_close($db);
?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值