PHP分页原理_PHP_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > PHP > PHP分页原理

PHP分页原理

 2013/10/24 1:53:05  香煎马鲛鱼  程序员俱乐部  我要评论(0)
  • 摘要:PHP分页原理分页是网站上常用的一种信息显示手段,比如网上的评论,有时候会有几百条上千条甚至几十万条,同时在一个页面上显示显然不和实际,所以,我们就要用到分页了。实现分页需要访问mysql数据库中所存入的数据,所以我们得新建一个数据库,并在数据库中建一个表:(以上数据是我抽风随便打的,不喜请扔砖)然后呢,我们再使用EPP3建一个工程,我习惯在工程下新建两个php文件,一个用来连接数据库,一个用来实现简单分页:用来连接数据库的代码:文件一:conn.php<
  • 标签:PHP

class="p0">PHP分页原理

分页是网站上常用的一种信息显示手段,比如网上的评论,有时候会有几百条上千条甚至几十万条,同时在一个页面上显示显然不和实际,所以,我们就要用到分页了。

实现分页需要访问mysql数据库中所存入的数据,所以我们得新建一个数据库,并在数据库中建一个表:



??

(以上数据是我抽风随便打的,不喜请扔砖)

然后呢,我们再使用EPP3建一个工程,我习惯在工程下新建两个php文件,一个用来连接数据库,一个用来实现简单分页:

用来连接数据库的代码:

文件一:conn.php

<?php

$conn?=?@mysql_connect("localhost","root","")?or?die("错误连接");

mysql_select_db("nettext",$conn);

mysql_query("set?names?'GBK'");

(关键代码)

function?htmlCode($contect){

$contect?=?str_replace("\n",?"<br>",?str_replace("?",?"?",?$contect));

$contect?=?str_replace("你好",?"***",?$contect);//屏蔽关键字

return??$contect;

}

?>

用来实现分页的代码:

<?php?error_reporting(0);?>

?

<?php

include?("conn.php");

$pagesize?=?5;

?

$url?=?$_SERVER["REQUEST_URI"];

//获取路径

$url?=?parse_url($url);

//析一个?URL?并返回一个关联数组?

$url?=?$url[path];

//获得关联数组中的path部分

$numq?=?mysql_query("SELECT?*?FROM?`softwaresix`");

//获取表:softwaresix中的所有数据

$num?=?mysql_num_rows($numq);

//获取条数

if($_GET[page]){

$pageval=$_GET[page];

$page=($pageval-1)*$pagesize;

$page.=',';

}

//page是显示分段信息的起始信息条的序号,pageval是页码,pagesize是每页显示的条数;

if($num?>?$pagesize){//如果数据总数大于每页显示条数在显示下一页和上一页

?if($pageval<=1)$pageval=1;

echo?"共?$num?条".

"?<a?href=$url?page=".($pageval-1).">上一页</a>?<a?href=$url?page=".($pageval+1).">下一页</a>";

}

?

$SQL?=?"SELECT?*?FROM?`softwaresix`?limit?$page?$pagesize";

$query?=?mysql_query($SQL);

while?($row?=?mysql_fetch_array($query)){//逐条在页面上显示信息

echo?"<hr><b>".$row[id]."?|?".$row[uid];

}

?>

?

?

?

下面我们来理清一下做分页的思路:

前提:

需要建立一个数据库,这个数据库有一个有一定数量信息的表;

基本:

1、建立php与数据库之间的联系;

2、获取路径——解析一个?URL?并返回一个关联数组——获得关联数组中的path部分;

3、获取表中数据和信息条数;

4、分页公式:

if($_GET[page]){

$pageval=$_GET[page];

$page=($pageval-1)*$pagesize;

$page.=',';

}

//page是显示分段信息的起始信息条的序号,pageval是页码,pagesize是每页显示的条数;

5、上下页按钮:

if($pageval<=1)$pageval=1;

echo?"共?$num?条".

"?<a?href=$url?page=".($pageval-1).">上一页</a>?<a?href=$url?page=".($pageval+1).">下一页</a>";

6、将信息显示在页面上:

$SQL?=?"SELECT?*?FROM?`softwaresix`?limit?$page?$pagesize";

$query?=?mysql_query($SQL);

while?($row?=?mysql_fetch_array($query)){//逐条在页面上显示信息

echo?"<hr><b>".$row[id]."?|?".$row[uid];

}

?

增强用户体验的优化:

if($num?>?$pagesize){//如果数据总数大于每页显示条数在显示下一页和上一页

……………………

}

????其实,这只是最简单的分页操作,网站中的分页要比这个复杂很多,网络上也有别人写好的类可以使用。

????接下来要完善这个分类,就需要我们共同的努力啦~

<!--EndFragment-->
  • 大小: 79.2 KB
  • 查看图片附件
发表评论
用户名: 匿名