根据以往的经验,对于很多初学者,分页功能实现起来还是有一定的困难的,为了帮大家解决这样的问题:特此献上五环之歌。从此分页功能便是如小岳岳唱歌一样简练,漂亮,精干。哈哈,不闲扯了。正式进入千锋PHP五环之歌之步骤实现分页功能。
第一环:计算总的记录数—即总共要显示多少条数据
第二环: 每页显示的条数—即一般都是我们程序媛来规定每页显示几条数据。
第三环: 计算总页数—即根据以上两个条件便可求出总的页数,为了防止出现小数,我们都是向上取整。详情见下面代码:
第四环: 显示当前页面数—即我们一般在地址栏中需要传递一个分页参数,例如p=5,则5就是当前的页码数。
第五环: 计算偏移量—即这是最关键的一步,以上的步骤就是为求偏移量做铺垫的。偏移量=(当前页码数-1)* 每页显示的条数

以下是小妹做出的一个实例:
以上链接数据库部分省略:
//查询数据得到总共有多少条数据

$sql = “SELECT count() FROM test”;
$result = mysqli_query($con, $sql);
$count = mysqli_fetch_assoc($result);
$count = intval($count[‘count()’]);

//规定每页显示几条数据

$perPage = 5;

//计算总页数,并且向上取整

$pages = ceil($count/$perPage);

//显示当前页码数

$curPage = isset($_GET[‘p’]) ? min(max((int)$_GET[‘p’],1),$pages) : 1;

//最后求偏移量

$offset = ($curPage - 1) * $perPage;

//最后通过查询数据使用LIMIT来显示每页显示多条数据即可。

$sql = “SELECT * FROM test ORDER BY id DESC LIMIT $offset,
$perPage”;
$result = mysqli_query($con, $sql);

写代码就要像千锋PHP口号一样:傻X一样的坚持,才能有牛X的结果。

五环之歌之PHP分页的更多相关文章

  1. iOS 音频拼接

    工作中或许会遇到这样的需求,将两段不同的音频合成一个音频(暂且称之为音频拼接),实现起来相对来说不是很难,再介绍如何拼接之前,先了解下AVFoundation下的几个基本知识点. 基本知识 AVAss ...

  2. Postgresql-模糊匹配大杀器

    # Postgresql-模糊匹配大杀器 ## 问题背景 随着pg越来越强大,abase目前已经升级到5.0(postgresql10.4),目前abase5.0继承了全文检索插件(zhparser) ...

  3. HEOI2019 游记——240秒处的起死回生

    我还没死 Day-1 最后一场模拟赛! T1:自然数幂次和再前缀和,还是O(k)次多项式,拉格朗日插值,,,,,不能总想斯特林数啊!!! T2:神仙DP预处理... T3:AC自动机+LCA处差分+暴 ...

  4. if语句和case语句用法展示

    if语句和case语句用法展示 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.单分支if条件语句 1>.语法格式一 if [ 条件判断式 ];then 源代码 fi 2& ...

  5. 《Node.js核心技术教程》学习笔记

    <Node.js核心技术教程>TOC \o "1-3" \h \z \u 1.章模块化编程 2019.2.19 13:30' PAGEREF _101 \h 1 08D ...

  6. xcode添加背景音乐/音效

    xcode添加音效:http://www.cnblogs.com/jiayongqiang/p/5625886.html 背景音乐: ios播放音乐时会用到一个叫做AVAudioPlayer的类,这个 ...

  7. python 中的while循环、格式化、编码初始

    while循环 循环:不断重复着某件事就是循环 while 关键字 死循环:while True: ​ 循环体 while True: # 死循环# print("坚强")# pr ...

  8. python基础(while、运算符、编码初始)

    ------------恢复内容开始------------ <!doctype html> while循环 while循环 循环:不断重复着某件事就是循环 while 关键字 死循环:w ...

  9. 蒲公英 · JELLY技术周刊 Vol.35: Flash 四宗罪?

    蒲公英 · JELLY技术周刊 Vol.35 Flash 曾是 Web 迈向新世代的福音书,它为这个世界带来了缤纷色彩,但也如伊甸园的苹果,闪耀着智慧的光芒,却四灾随行.诞生 1995 年至今 25 ...

随机推荐

  1. PAT - 1067 试密码 (20 分)

    当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死.本题就请你实现这个小功能. 输入格式: 输入在第一行给出一个密码(长度不超过 20 的.不包含空格. ...

  2. windows server 2003和window2008区别

    windows 2003与windows 2008简介 windows 2003是微软老一代的服务器系统,自带iis 6,操作界面类似于windows XP,因为国内很多IDC都喜欢用盗版window ...

  3. hdu1387 模拟队列

    Team Queue Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Su ...

  4. HIVE 计算指定日期本周的第一天和最后一天

    -- 计算指定日期本周的第一天和最后一天 select day ,dayofweek(day) as dw1 ,date_add( - dayofweek(day)) as Su_s -- 周日_st ...

  5. thinkPHP5.0联表查询和统计文章的图片(栏目文章)数量

    public function index(){ //获取内容列表信息 $res = db('article')->alias('a') ->join('category b', 'b.i ...

  6. Mac 系统变量

    vim .bash_profile ========================= MAVEN_HOME = < ... > export MAVEN_HOME =========== ...

  7. [转]jQuery页面滚动图片等元素动态加载实现

    本文转自:http://www.zhangxinxu.com/wordpress/?p=1259 一.关于滚动显屏加载 常常会有这样子的页面,内容很丰富,页面很长,图片较多.比如说光棍节很疯狂的淘宝商 ...

  8. [转]jQuery AJAX pagination plugin with ASP.NET Server Side

    本文转自:http://do-web.com/jpaging/usage How does it work? 1. In order to implement the plugin, you need ...

  9. VB.NET中的模块

    在C#中有“静态类”的概念,自然里边全部的方法都是静态的.这意味着你可以直接通过"类名.方法名"去调用(例如System的Math类就是典型).在VB.NET中,没有“静态类”的概 ...

  10. Ubuntu瞎胡搞

    ubutnu的几个必不可少的软件: 1.Guake,超级方便的终端 2.Unity tweak tool 3.VLC,本地视频播放器 4.MyPint,简单画图软件 5.GIMP,PS工具 Subli ...