用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 相关文章推荐
php 使用post,get的一种简洁方式
Apr 25 PHP
Admin generator, filters and I18n
Oct 06 PHP
PHP mb_convert_encoding文字编码的转换函数介绍
Nov 10 PHP
PHP中SESSION使用中的一点经验总结
Mar 30 PHP
ThinkPHP 3.2 数据分页代码分享
Oct 14 PHP
php中instanceof 与 is_a()区别分析
Mar 03 PHP
CodeIgniter删除和设置Cookie的方法
Apr 07 PHP
PHP redis实现超迷你全文检索
Mar 04 PHP
PHP堆栈调试操作简单示例
Jun 15 PHP
PHP7创建COOKIE和销毁COOKIE的实例方法
Feb 03 PHP
深入解析PHP底层机制及相关原理
Dec 11 PHP
PHP 实现重载
Mar 09 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
ThinkPHP关于session的操作方法汇总
2014/07/18 PHP
PHP设计模式(九)外观模式Facade实例详解【结构型】
2020/05/02 PHP
JavaScript 判断指定字符串是否为有效数字
2010/05/11 Javascript
jquery插件之easing使用
2010/08/19 Javascript
javascript中的缓动效果实现程序
2012/12/29 Javascript
jquery Moblie入门—hello world的示例代码学习
2013/01/08 Javascript
js中匿名函数的创建与调用方法分析
2014/12/19 Javascript
举例讲解AngularJS中的模块
2015/06/17 Javascript
JavaScript如何获取数组最大值和最小值
2015/11/18 Javascript
实例讲解js验证表单项是否为空的方法
2016/01/09 Javascript
实例讲解JavaScript中instanceof运算符的用法
2016/06/08 Javascript
浅谈Webpack打包优化技巧
2018/06/12 Javascript
vue-cli监听组件加载完成的方法
2018/09/07 Javascript
webpack4+react多页面架构的实现
2018/10/25 Javascript
three.js搭建室内场景教程
2018/12/30 Javascript
使用vuepress搭建静态博客的示例代码
2019/02/14 Javascript
vue+vuex+axios从后台获取数据存入vuex,组件之间共享数据操作
2020/07/31 Javascript
[01:03:38]2014 DOTA2国际邀请赛中国区预选赛5.21 CNB VS CIS
2014/05/22 DOTA
[01:14:35]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第一局
2016/02/26 DOTA
python 换位密码算法的实例详解
2017/07/19 Python
numpy添加新的维度:newaxis的方法
2018/08/02 Python
Python3自动签到 定时任务 判断节假日的实例
2018/11/13 Python
Python 微信之获取好友昵称并制作wordcloud的实例
2019/02/21 Python
python 并发编程 非阻塞IO模型原理解析
2019/08/20 Python
在TensorFlow中实现矩阵维度扩展
2020/05/22 Python
CSS+jQuery+PHP+MySQL实现的在线答题功能
2015/04/25 HTML / CSS
Dr.Jart+美国官网:韩国药妆品牌
2019/01/18 全球购物
低碳生活的宣传标语
2014/06/23 职场文书
乡党政领导班子群众路线教育实践活动个人对照检查材料
2014/09/20 职场文书
乡领导班子四风问题对照检查材料
2014/09/25 职场文书
成都人事代理协议书
2014/10/25 职场文书
医院领导班子四风问题对照检查材料
2014/10/26 职场文书
学术会议开幕词
2016/03/03 职场文书
两行代码解决Jupyter Notebook中文不能显示的问题
2021/04/24 Python
Android RecyclerView实现九宫格效果
2022/06/28 Java/Android
ubuntu端向日葵键盘输入卡顿问题及解决
2022/12/24 Servers