有关php分页原理的入门教程。
假设要处理1000条数据,要在每页中显示10条,这样的话就会分100页来显示,咱们先看一看在mysql里提取10条信息是如何操作的。
select * from table limit 0,10
上面是一句很简单的mysql查询语句,它的作用是从一个名叫table的表里提取10条数据,并且把所有字段的值都获得。其中的limit 0,10的用法是:limit 开始点,要提取的数目
专题推荐:php分页代码大全
关键的地方就在这段“limit 0,10”,它其中的0是以0为起始点,后面的10则是显示10条数据,那么我们要以10为起始点,显示到第20条数据该怎么写呢?
可能很多大大会心直口快的说“limit 10,20”嘛!啊哦,这样可就错误了哦,正确的写法是“limit 10,10”它后面的参数并非是结束点而是要提取的数目 ,记住哦。
懂得了如何提取10条数据,那么提取1000条也就是做100次这种查询呀,就是说要做如下的查询:
limit 0,10 //第一页
limit 10,10 //第二页
limit 20,10 //第三页
limit 30,10 //第四页
……
第一个参数每翻一页就增加10,可是第二个参数是不变的。
设法根据页数来改变第一个参数的值 ,就可以进行分页显示数据了,怎么样,原理是不是很简单?
可是要怎么设法根据页数来改变第一个参数的值呢?首先,咱们要有一个页数的值,用url的get方式获取。
比如index.php?page=18
这种url地址可是随处可见,其中的page参数的作用就是传入要显示的页数。
<?php
/*
author:默默
date :2006-12-03
*/
$page=isset($_get['page'])?intval($_get['page']):1; //这句就是获取page=18中的page的值,假如不存在page,那么页数就是1。
$num=10; //每页显示10条数据
$db=mysql_connect("host","name","pass"); //创建数据库连接
$select=mysql_select_db("db",$db); //选择要操作的数据库
/*
首先要获取数据库中到底有多少数据,才能判断具体要分多少页,总页数 具体的公式就是
总数据数 除以 每页显示的条数,有余进一 。
也就是说10/3=3.3333=4 有余数就要进一。
*/
$total=mysql_num_rows(mysql_query("select * from table")); //查询数据的总数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=mysql_query("select * from table limit $offset,$num "); //获取相应页数所需要显示的数据
while($it=mysql_fetch_array($info)){
echo $it['name']."<br />";
} //显示数据
for($i=1;$i<=$pagenum;$i++){
$show=($i!=$page)?"<a href='index.php?page=".$i."'>$i</a>":"<b>$i</b>";
echo $show." ";
}
/*显示分页信息,假如是当页则显示粗体的数字,其余的页数则为超连接,假如当前为第三页则显示如下
1 2 3 4 5 6
*/
?>
假如你仔细的读过上面的代码,把数据库连接和查询的表替换成你的,那么就能看见它的执行效果哦。
是不是很简单,只要动动脑筋,可以让它显示的更为个性化哦,给大家出一个小题,如何实现“首页 上一页 下一页 尾页”这种格式的分页呢?
总结:
原型: select * from table limit 0,10
程序: select * from table limit $offset,$num ($offset取值是:传入的页面数-1 $num是每个页面显示的数据,多为固定常量值)
总分页数:总数据% 每页显示的条数 ,有余进一
int totalpage=((totalcount%num)==0)?totalcount/num:totalcount/num+1;
limit用法 :
limit 开始点,要提取的数目
注意:一定要加上order by ,确定以上升或者下降的顺序来查询,不然在查询时会不知道从哪个方向开始查询。
一定要注意顺序:正确select * from user order by id desc limit 0,10;
相关推荐
### PHP 分页原理详解 #### 一、分页的基本概念 在Web开发中,当数据量较大时,一次性展示所有数据不仅会导致页面加载速度变慢,还会影响用户体验。因此,通常采用分页技术来实现数据的分批显示,即每次只显示一...
总结,PHP分页原理并不复杂,主要涉及数据的限制、总页数计算以及用户交互的实现。对于初学者,理解并实践这一基础概念将对提升PHP开发技能大有裨益。同时,不断学习和改进分页策略,以适应不同场景和性能需求,也是...
php新手入门认识分页原理,分页显示是一种非常常见的浏览和显示大量数据的方法,属于web编程中最常处理的事件之一。
综上所述,PHP结合MySQL实现分页的原理就是通过动态构建SQL查询语句的LIMIT子句来获取特定的数据范围,并通过PHP脚本中的逻辑处理来生成分页链接,从而实现分页功能。掌握这一技能对于任何需要在WEB上展示数据的...
PHP100视频教程13:PHP+MYSQL分页原理 PHP100视频教程14:PHP上传原理及应用 PHP100视频教程15:PHP生成HTML文件原理 PHP100视频教程16:PHP小偷程序原理和实例 PHP100视频教程17:PHP面向对象开发的学习(一) ...
### 二、PHP分页原理 PHP分页主要是通过计算总页数和当前页,然后根据用户选择的页码查询数据库中对应的数据。关键在于正确设置SQL的LIMIT子句。例如,每页显示10条记录,第一页的SQL可能是`SELECT * FROM table ...
在PHP编程中,分页是网站开发中一个非常重要的功能,尤其当数据量大到无法一次性展示时。"php万能分页源码"提供了一种解决方案,它是一个灵活且可自定义的分页类,适用于各种场景。下面将详细阐述这个源码的工作原理...
以上代码是一个基础的PHP分页实现,但实际应用中,你可能需要考虑更多细节,如错误处理、数据过滤、安全防护(防止SQL注入)以及用户体验优化(如加载提示、懒加载等)。此外,此代码使用了已废弃的`mysql_`系列函数...
1. **分页原理** 分页的基本思想是将大量数据分成多个小块(页),每次只加载一部分数据到前端展示,用户可以通过导航链接跳转到其他页。这可以减少页面加载时间,提高用户体验,同时减轻服务器负担。 2. **PHP...
本文将深入探讨PHP分页的实现方式,以及如何创建多种精美的分页样式。 首先,我们要理解分页的基本原理。分页主要是通过计算总记录数、每页显示的记录数,然后根据当前页数来确定要查询的数据范围。在PHP中,我们...
一、分页原理 分页的基本思想是将数据库查询结果分割成若干小块,每次只加载一部分数据到网页上展示。这涉及到两个关键参数: 1. **每页显示的记录数($PageSize)**:定义了每一页应该包含的数据条目数量。例如,...
1. **基础分页原理** - 分页的基本思想是通过限制每次从数据库中取出的数据量,只加载用户当前查看的页面数据,而不是一次性加载所有数据。 - 常见的参数包括当前页码($currentPage)和每页显示条数($perPage)...
本话题将详细探讨如何创建一个简单的PHP分页函数。 首先,我们需要理解分页的基本原理。分页主要是通过限制SQL查询返回的结果数量,然后配合页面链接,让用户可以浏览数据的不同部分。通常,我们设定每页显示一定...
本篇文章将深入探讨一个名为"page.class.php"的PHP分页类,以及如何使用它来实现高效的分页功能。 首先,我们要理解分页的基本原理。在网页上,如果一次性加载所有数据,不仅会消耗大量服务器资源,而且可能导致...
下面我们将详细探讨PHP分页类的设计原理、实现方法以及`page.class.php`这个文件可能包含的关键知识点。 1. 分页类设计基础 - **属性**:分页类通常会包含一些属性,如当前页码(currentPage)、每页显示条数(per...
1. **PHP分页原理**: PHP分页主要涉及两个核心部分:计算总页数和根据当前页获取数据。首先,你需要知道数据库中的总记录数,然后根据每页显示的记录数来计算总页数。例如,如果每页显示10条记录,总记录数是100,...
这个经典分页类提供了基础的分页功能,初学者可以通过学习这个类,理解分页的实现原理,并在此基础上进行定制和扩展,满足实际项目的需求。 8. **好用分页类.txt** 这个文本文件可能包含了分页类的源代码,初学者...
一、分页原理 分页的核心思想是将数据库中的大结果集分割成多个小部分进行显示。关键参数有两个:每页显示的记录数($PageSize)和当前页码($CurrentPageID)。通过这两个参数,我们可以确定要显示的数据范围。在...
此外,还可以使用一些现成的PHP分页库,如`\Illuminate\Pagination\LengthAwarePaginator`(Laravel框架)或者`\Slim\PDO\Paginator`(Slim框架),这些库提供了更高级的功能和更好的可维护性。 总的来说,PHP原生...
根据给定的信息,本文将对一个“简单、方便、功能全”的PHP分页类进行详细的解析,包括其构造方法、属性、以及如何实现分页显示的功能。通过本篇内容,您将了解到该类的设计思想、核心函数的工作原理,以及如何在...