一:分页原理:

所谓分页显示,也就是将数据库中的结果集认为的分成一段一段的来显示,需要两个初始的参数:

每页多少条记录 ($PageSize)?

当前是第几页($CurrentPageID)?

还有其他的一些参数

比如:上一页($NextPageId)、总页数($numPages)等,都可以根据前边的得到。

以MYsql为例:如果要从表内截取某段内容,sql语句可以为:select * from table limit offset ,rows.

前十条记录:select * from table limit 0,10

前11至20条记录:select * from table limit 10,10

第21至30条记录:select * from table limit 20,10

这些sql语句其实就是$PageSize=10的时候取表内每一页数据的sql语句,我们可以总结出这样一个模板:

select * from table limit ($CurrentPageID-1)*$PageSize,$PageSize

剩下的就是构造合适的php语句从数据库内获取数据并显示了。

例:1:链接数据库

$conn =mysql_connet('localhost','root','1234abcd') or die(‘链接数据库错误’.mysql_error());

2:选择数据库

mysql_query('set names utf8');

4:发送sql语句得到结果进行处理

4.1分页【分页要发出两个sql语句,一个获得$rowCount,一个是通过sql的limit获得分页结果。所以我们会获得两个结果集。

分页(获取四个值,两个sql语句)

$pageSize=3;//每页显示多少条记录

$rowCount=0;//共有多少条记录

$pageNow=1;//希望显示第几页

$pageCount=0;//一共有多少页【分页共有这个四个指标,缺一不可。由于$rowCount可以从服务器获得,所以可以给予初始值为0;

$pageNow希望显示第几页,这里最好是设置为0;$pageSize是每页显示多少条记录,这里根据网站需求提前制定。

$pageCount=ceil($rowCount/$pageSize),既然$rowCount可以初始值为0,那么$pageCount当然也就可以设置为0.四个指标,两个0,一个1,另一个为网站需求。】

//4.15根据分页链接来修改$pageNow的值

if(!empty($_GET['pageNow'])){

$pageNow=$_GET['pageNow'];[根据分页链接来修改$pageNow的值。'];}

$sql='select count(id) from emp';

$res1=mysql_query($sql);

//4.11取出行数

if($row=mysql_fetch_row($res1)){

$rowCount=$row[0];

}//[取得$rwoCount,然后就知道$pageCount这两个指标了。]

//4.13计算共有多少页

$sql="select * from emp limit $pageStart,$pageSize";//[根据$sql语句的limit 后面的两个值(起始值,每页条数),来实现分页。以及求得这两个值。]

$res2=mysql_query($sql,$conn) or die('无法获取结果集'.mysql_error());

echo '<table border=1>';[        echo "<table border='1px' cellspacing='0px' bordercolor='red' width='600px'>";]

"<tr><th>id</th><th>name</th><th>grade</th><th>email</th><th>salary</th><th><a href='#'>删除用户</a></th><th><a href='#'>修改用户</a></th></tr>";        while($row=mysql_fetch_assoc($res2)){

echo "<tr><td>{$row['id']}</td><td>{$row['name']}</td><td>{$row['grade']}</td><td>{$row['email']}</td><td>{$row['salary']}</td><td><a href='#'>删除用户</a></td><td><a href='#'>修改用户</a></td></tr>";        }

echo '</table>';

//4.14打印出页码的超链接

for($i=1;$i<=$pageCount;$i++){

echo "<a href='?pageNow=$i'>$i</a> ";//[打印出页码的超链接]

}

//5.释放资源,关闭连接

mysql_free_result($res2);

mysql_close($conn);

】。

php数据分页显示基础的更多相关文章

  1. Javascript实例技巧精选(6)—滚动鼠标中键读取Json数据分页显示网页内容

    >>点击这里下载完整html源码<< 截图如下: 滚动鼠标中键读取Json数据分页显示网页内容,关键的Javascript如下: <script type="t ...

  2. PHP实现数据分页显示

    分页在后台管理中是经常使用的功能,分页显示方便大量数据的管理. 实例代码如下: <!DOCTYPE html> <html> <head> <meta cha ...

  3. ASP.NET使用ListView数据绑定控件和DataPager实现数据分页显示(一)

    为什么使用ListView+DataPager的方式实现分页显示? .net提供的诸多数据绑定控件,每一种都有它自己的优点和缺点.如果需要对数据进行操作,如果数据量不大的情况下,DataList和Gr ...

  4. php分页例子实现读取mysql数据分页显示

    以下代码是PHP分页案例,测试通过,主要是PHP+mysql实现分页,代码来处百度空间,有兴趣看的话可以了解一下PHP是如何分页的? <?php $link = mysql_connect(&q ...

  5. 11_MySQL如何让数据分页显示

    -- 数据分页 SELECT empno,sal FROM t_emp LIMIT 5;

  6. MVC数据库数据分页显示

    首先从数据库获取数据 using System; using System.Collections.Generic; using System.Linq; using System.Web; usin ...

  7. ASP.NET使用ListView数据绑定控件和DataPager实现数据分页显示(二)

    使用ListView控件进行修改,删除与添加操作1.页面代码: <asp:ListView ID="lv2" runat="server" onpagep ...

  8. 解决springboot+vue+mybatis中,将后台数据分页显示在前台,并且根据页码自动跳转对应页码信息

    文章目录 先看效果 1.要考虑的问题,对数据进行分页查询 2.前端和后台的交互 先看效果 1.要考虑的问题,对数据进行分页查询 mapper文件这样写 从每次开始查询的位置,到每页展示的条数, < ...

  9. php按条件查询的数据分页显示,点击下一页时又列出全部数据的解决办法

    其实很简单,只要把表单提交方式改为get方式就行了,然后调用分页函数: function getpage(&$m,$where,$pagesize=10){ $m1=clone $m;//浅复 ...

随机推荐

  1. 怎样在Win10下安装ubuntu双系统

    Win10系统下安装ubuntu系统 安装前准备: 概念 在动手之前,一定要先了解双系统.系统引导.分区这3个概念,这样才能理解安装步骤,应对安装过程中的意外情况. 双系统 双系统就是开机之后,会有一 ...

  2. java字串加密

    字串加密 1.设计思想: (1)加密方法,字符串的每一个字符都代表这个字符往后的第三位,最后三个字符代表,开始的三个字符. (2)解密方法,字符串的每一个字符都代表这个字符往前的第三位,开始三个字符代 ...

  3. (转)log4j使用介绍

    原文出自: log4j使用介绍 日志是应用软件中不可缺少的部分,Apache的开源项目Log4j是一个功能强大的日志组件,提供方便的日志记录.以下是个人经验,具体请参考Log4j文档指南. Log4j ...

  4. MySQL技术内幕汇总

    MySql技术内幕之MySQL入门(1) MySql技术内幕之MySQL入门(1) 检查系统中是否已经安装了MySQL sudo netstat -tap | grep mysql 若没有显示已安装结 ...

  5. Django Web框架入门

    一.Django介绍 Django是一个开放源代码的Web应用框架,由Python写成,采用了MVC的框架模式.Django的主要目的是简便.快速的开发数据库驱动的网站.它强调代码复用,多个组件可以很 ...

  6. 基于HTML5 Canvas的3D动态Chart图表

    发现现在工业SCADA上或者电信网管方面用图表的特别多,虽然绝大部分人在图表制作方面用的是echarts,他确实好用,但是有些时候我们不能调用别的插件,这个时候就得自己写这些美丽的图表了,然而图表轻易 ...

  7. [Scikit-learn] 4.4 Dimensionality reduction - PCA

    2.5. Decomposing signals in components (matrix factorization problems) 2.5.1. Principal component an ...

  8. Problem S

    Problem Description Nowadays, we all know that Computer College is the biggest department in HDU. Bu ...

  9. windows 上rsync客户端使用方法

    1.1 获取 windows上实现rsync的软件(cwRsync) cwRsync是Windows 客户端GUI的一个包含Rsync的包装.您可以使用cwRsync快速远程文件备份和同步. 1.1. ...

  10. 阿里云RDS for SQL Server使用的一些最佳实践

    了解RDS的概念 这也是第一条,也是最重要的一条,在使用某项产品和服务之前,首先要了解该产品或服务的功能与限制,就像你买一个冰箱或洗衣机,通常也只有在阅读完说明书之后才能利用起来它们的所以功能,以及使 ...