PHP
发布时间:2019-11-11 发布网站:大佬教程 code.js-code.com
大佬教程 收集整理的这篇文章主要介绍了php显示页码分页类的封装 ,大佬教程 大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
本文实例为大家分享了php 封装显示页码的分页类,供大家参考 ,具体内容如下
一、代码
conn.php
php;">
connect(
);
}
public function connect()
{
$conn=mysql_pconnect('localhost','root','root') or die("Connect MySQL
fal se"
);
mysql_
SELE ct_db('db_database20',$conn) or die("Connect DB
fal se"
);
mysql_query("SET NAMES utf8"
);
}
}
?>
index.php
php;">
php
include_once("conn.
php "
); //包含conn
.php文件
class Page extends Mysql
{ //创建 Page类并继承Mysql类
private $pagesize;//每页显示的记录数
private $page;//当前是第几页
private $pages;//总页数
private $@R_756_1
058 6@l;//查询的总记录数
private $pagelen;//显示的页码数
private $pageoffset;//页码的偏移量
private $table;//欲查询的表名
function __construct($pagesize,$pagelen,$tabl
E) {
if($_GET['page']=="" || $_GET['page']<0){//判断地址栏参数page是否有值
$this->page=1;//当前页定义为1
}else
{
$this->page=$_GET['page'];//当前页为地址栏参数的值
}
$this->pagesize=$pagesize;
$this->pagelen=$pagelen;
$this->table=$table;
new Mysql(
); //实例化Mysql类
$sql=mysql_query("
SELE ct * from $this->table"
); //查询表中的记录
$this->@R_756_1
058 6@l=mysql_num_rows($sql
); //获得查询的总记录数
$this->pages=ceil($this->@R_756_1
058 6@l/$this->pagesiz
E) ;//计算总页数
$this->pageoffset=($this->pagelen-1)/2;//计算页码偏移量
}
function sel()
{
$sql=mysql_query("
SELE ct * from $this->table limit ".($this->page-1)*$this->pagesize.",".$this->pagesiz
E) ;//查询当前页显示的记录
return $sql;//返回查询结果
}
function myPage()
{
$
messa ge="第".$this->page."页/共".$this->page
s. "页";//输出当前第几页,共几页
if($this->page==1)
{ //如果当前页是1
$
messa ge.="首页上一页";//输出没有链接的文字
}else
{
$
messa ge.="
首页 ";//输出有链接的文字
$
messa ge.="
page-1)."'>上一页 ";//输出有链接的文字
}
if($this->page<=$this->pageoffset)
{ //如果当前页小于页码的偏移量
$minpage=1;//显示的最小页数为1
$maxpage=$this->pagelen;//显示的最大页数为页码的值
}elseif($this->page>$this->pages-$this->pageoffset)
{ //如果当前页大于总页数减去页码的偏移量
$minpage=$this->pages-$this->pagelen+1;//显示的最小页数为总页数减去页码数
再加上 1
$maxpage=$this->pages;//显示的最大页数为总页数
}else
{
$minpage=$this->page-$this->pageoffset;//显示的最小页数为当前页数减去页码的偏移量
$maxpage=$this->page+$this->pageoffset;//显示的最大页数为当前页数加上页码的偏移量
}
for($i=$minpage;$i<=$maxpage;$i++){//循环输出数字页码数
if($i==$this->pag
E) {
$
messa ge.=$i."\n";//输出没有链接的数字
}else
{
$
messa ge.="
".$i." \n";//输出有链接的数字
}
}
if($this->page==$this->pages)
{ //如果当前页等于最大页数
$
messa ge.="下一页尾页";//显示没有链接的文字
}else
{
$
messa ge.="
page+1)."'>下一页 ";//显示有链接的文字
$
messa ge.="
pages."'>尾页 ";//显示有链接的文字
}
return $
messa ge;//返回变量的值
}
}
?>
LPADding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#FF0000">
sel();
while($rst=mysql_fetch_row($rs)){
?>
450_23
@m yPage(
);
?>
二、运行结果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持菜鸟教程。
大佬总结
以上是大佬教程 为你收集整理的php显示页码分页类的封装 全部内容,希望文章能够帮你解决php显示页码分页类的封装 所遇到的程序开发问题。
如果觉得大佬教程 网站内容还不错,欢迎将大佬教程 推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。 如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。