用php制作简单分页(从数据库读取记录)的方法详解


Posted in PHP onMay 04, 2013

      PHP新手,一直想做一下分页都给忘了,今天有幸被提醒所以网上搜了一下。有些写的看不懂也没怎么去看。最后找到一个比较简单的。

大致的思想就是:

1.设置每页要显示的最大记录数。

2.计算出页面总数

3.当前页面跟总页面数比较改变连接的状态

4.用limit控制从数据库中读取记录

下面是代码:

$conn = mysql_connect('localhost','root','');
            mysql_select_db('db_BookStore',$conn);
            mysql_query("set names utf8");
            if(isset($_GET['page']))                   //判断是否存在page参数,获得页面值,否则取1
            {
                $page = intval($_GET['page']);
            }
            else
            {
                $page = 1;
            }
            $page_size = 2; //最大记录条数
            $sql = "SELECT count(*) as amount FROM tb_BookInfo";
            $result = mysql_query($sql);
            $row = mysql_fetch_array($result);
            //计算总页数
            $amount = $row['amount'];
            if($amount)
            {
                if($amount < $page_size){$page_count = 1;}
                if($amount % $page_size){$page_count = (int)($amount / $page_size) + 1; }
                else{$page_count = $amount / $page_size;}
            }
            else
            {
                $page_count = 0;
            }
            //翻页链接
            $page_string = "";
            if($page == 1)
            {
                $page_string .= "首页 | 上一页";
            }
            else
            {
                $page_string .= "<a href='?page=1'>首页</a> | <a href='?page=".($page-1)."'>上一页</a>";
            }
            $page_string .= "| $page |";
            if($page == $page_count)
            {
                $page_string .= "下一页 | 尾页";
            }
            else
            {
                $page_string .= "<a href='?page=".($page+1)."'>下一页</a> | <a href='?page=$page_count'>尾页</a>";
            }
        $sql = "select * from table order by id desc limit ". ($page-1)*$page_size .", $page_size";
          $result = mysql_query($sql);



 while ( $row = mysql_fetch_row($result) ){




 $rowset[] = $row;



 }
?>

这个只是非常简单的一种方法,各位路人大牛,若有其他类型的方法,敬请告之一下。
PHP 相关文章推荐
mysqli_set_charset和SET NAMES使用抉择及优劣分析
Jan 13 PHP
php获取目录所有文件并将结果保存到数组(实例)
Oct 25 PHP
php编写批量生成不重复的卡号密码代码
May 14 PHP
PHP实现获取中英文首字母
Jun 19 PHP
讲解WordPress中用于获取评论模板和搜索表单的PHP函数
Dec 28 PHP
php微信开发之自定义菜单实现
Nov 18 PHP
thinkPHP实现多字段模糊匹配查询的方法
Dec 01 PHP
laravel自定义分页效果
Jul 23 PHP
PHP对象的浅复制与深复制的实例详解
Oct 26 PHP
详细解读php的命名空间(二)
Feb 21 PHP
PHP实现的获取文件mimes类型工具类示例
Apr 08 PHP
php中isset与empty函数的困惑与用法分析
Jul 05 PHP
PHPMailer邮件发送的实现代码
May 04 #PHP
用php实现选择排序的解决方法
May 04 #PHP
基于PHP 面向对象之成员方法详解
May 04 #PHP
php中判断数组是一维,二维,还是多维的解决方法
May 04 #PHP
PHP命名空间(Namespace)的使用详解
May 04 #PHP
PHP更新购物车数量(表单部分/PHP处理部分)
May 03 #PHP
基于php验证码函数的使用示例
May 03 #PHP
You might like
基于php常用正则表达式的整理汇总
2013/06/08 PHP
JS 进度条效果实现代码整理
2011/05/21 Javascript
js获取通过ajax返回的map型的JSONArray的方法
2014/01/09 Javascript
js获取指定的cookie的具体实现
2014/02/20 Javascript
jquery validate 自定义验证方法介绍 日期验证
2014/02/27 Javascript
jQuery焦点图切换简易插件制作过程全纪录
2014/08/27 Javascript
JavaScript创建一个object对象并操作对象属性的用法
2015/03/23 Javascript
js控制文本框只能输入中文、英文、数字与指定特殊符号的实现代码
2016/09/09 Javascript
使用jquery datatable和bootsrap创建表格实例代码
2017/03/17 Javascript
js编写简单的聊天室功能
2017/08/17 Javascript
node实现基于token的身份验证
2018/04/09 Javascript
Node.js引入UIBootstrap的方法示例
2018/05/11 Javascript
vuejs实现标签选项卡动态更改css样式的方法
2018/05/31 Javascript
js实现删除li标签一行内容
2019/04/16 Javascript
element-ui表格合并span-method的实现方法
2019/05/21 Javascript
Node 代理访问的实现
2019/09/19 Javascript
JavaScript文档加载模式以及元素获取
2020/07/28 Javascript
vue项目开启Gzip压缩和性能优化操作
2020/10/26 Javascript
微信小程序实现多行文字滚动
2020/11/18 Javascript
Python加pyGame实现的简单拼图游戏实例
2015/05/15 Python
python通过socket查询whois的方法
2015/07/18 Python
使用python获取csv文本的某行或某列数据的实例
2018/04/03 Python
python处理document文档保留原样式
2019/09/23 Python
Python3实现将一维数组按标准长度分隔为二维数组
2019/11/29 Python
django rest framework serializers序列化实例
2020/05/13 Python
OpenCV灰度化之后图片为绿色的解决
2020/12/01 Python
CSS3制作精致的照片墙特效
2016/06/07 HTML / CSS
CSS3 Flex 弹性布局实例代码详解
2018/11/01 HTML / CSS
基于HTML5+tracking.js实现刷脸支付功能
2020/04/16 HTML / CSS
超市促销活动方案
2014/03/05 职场文书
师范毕业生求职信
2014/07/11 职场文书
关于青春的演讲稿500字
2014/08/22 职场文书
暑假生活随笔
2015/08/15 职场文书
2016党员党课心得体会
2016/01/07 职场文书
如何让vue长列表快速加载
2021/03/29 Vue.js
彻底解决MySQL使用中文乱码的方法
2022/01/22 MySQL