超简单分页实现原理

在这里插入图片描述

<?php
//函数isset()或者 empty()--------判断变量是否已配置。
//函数ceil()-------ceil(x)返回的是大于x的最小整数。如: ceil(2.5) = 3
//函数limit()----------表示选者范围,从$page当页第几个开始=($page*$meiye)  到后面的第几个为止
//函数count()-----------统计数据库记录数
$conn=mysqli_connect("localhost", "root", "root");
mysqli_select_db($conn,'bbs');
mysqli_set_charset($conn,'utf-8');                //连接数据库配置

$sql="select count(*) from admin ";          //统计数据库记录数  并连接表
$rs=mysqli_query($conn,$sql);                      //发送一条 MySQL 查询
$rsc=mysqli_fetch_array($rs);                //返回数组资料 显示记录集RS
$num=$rsc[0];            //得到总记录数
$meiye=3 ;               //定义每页显示记录数
$zhongye=$num/$meiye;      //得到总页数    公式//总页数=总记录数/每页记录数
?>

<?php
if(empty($_GET['page'])){       //如果empty /isset 判断变量是否已配置  如果已经设置则输出
    $page=0;                       //输出 强行给PAGE(当前页)=0
}
else                          //否则
{
    $page=$_GET['page'];        //定义PAGE等于传递来的GET
    if($page<0) $page=0;         //如果传来 PAGE(当前页)<0  则定义为0

    if($page>=($zhongye))        //如果PAGE(当前页)>总页数 则定义下面的
        $page=ceil($zhongye)-1;     //总页数-1  ceil取整数1.5=2来算
}
?>

<?php
$sql="select * from  admin limit ".($page*$meiye).",$meiye";
//limit表示选者范围,从$page当页第几个开始=($page*$meiye)  到后面的第几个为止
//定义变量$sql, 意思是读取表admin中的数据  ORDER BY ID DESC 降序排
$rs = mysqli_query($conn,$sql);
//定义变量$rs 查询记录
while ($row = mysqli_fetch_array($rs)){
//定义量变(数组)row ,并利用while循环,通过返回组数据的函数mysql_fetch_array把数据一一写出来.
    echo "$row[username]";//输出NAME $row[1]  这样取也可以
    echo "<br>";
}
?>


<a href="?page=0">首页</a>
<a href="?page=<?=($page-1)?>">上一页</a>
<a href="?page=<?=($page+1)?>">下一页</a>
<a href="?page=<?=ceil($zhongye)-1?>">尾页</a>
<P>
    总页数<?=ceil($zhongye)?>  当前页数<?=($page+1)?>   总记录数<?=($num)?>  每页记录数<?=$meiye?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奥特曼想做个好人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值