phppage类封装分页功能_php显示页码分页类的封装

本文实例为大家分享了php封装显示页码的分页类,供大家参考,具体内容如下

一、代码

conn.php

class Mysql{

public function __construct(){

$this->connect();

}

public function connect(){

$conn=mysql_pconnect('localhost','root','root') or die("Connect MySQL False");

mysql_select_db('db_database20',$conn) or die("Connect DB False");

mysql_query("SET NAMES utf8");

}

}

?>

index.php

include_once("conn.php");//包含conn.php文件

class Page extends Mysql{//创建Page类并继承Mysql类

private $pagesize;//每页显示的记录数

private $page;//当前是第几页

private $pages;//总页数

private $total;//查询的总记录数

private $pagelen;//显示的页码数

private $pageoffset;//页码的偏移量

private $table;//欲查询的表名

function __construct($pagesize,$pagelen,$table){

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("select * from $this->table");//查询表中的记录

$this->total=mysql_num_rows($sql);//获得查询的总记录数

$this->pages=ceil($this->total/$this->pagesize);//计算总页数

$this->pageoffset=($this->pagelen-1)/2;//计算页码偏移量

}

function sel(){

$sql=mysql_query("select * from $this->table limit ".($this->page-1)*$this->pagesize.",".$this->pagesize);//查询当前页显示的记录

return $sql;//返回查询结果

}

function myPage(){

$message="第".$this->page."页/共".$this->pages."页   ";//输出当前第几页,共几页

if($this->page==1){//如果当前页是1

$message.="首页 上一页   ";//输出没有链接的文字

}else{

$message.="首页 ";//输出有链接的文字

$message.="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->page){

$message.=$i."\n";//输出没有链接的数字

}else{

$message.="".$i."\n";//输出有链接的数字

}

}

if($this->page==$this->pages){//如果当前页等于最大页数

$message.="  下一页 尾页";//显示没有链接的文字

}else{

$message.="  page+1)."'>下一页 ";//显示有链接的文字

$message.="pages."'>尾页";//显示有链接的文字

}

return $message;//返回变量的值

}

}

?>

ID:标题内容时间

$p=new Page('3','3','tb_demo01');

$rs=$p->sel();

while($rst=mysql_fetch_row($rs)){

?>

<?php echo $rst[0] ?><?php echo $rst[1] ?><?php echo $rst[2] ?><?php echo $rst[3] ?>

echo $p->myPage();

?>

二、运行结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/299418.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[转]两个经典的windbg调试案例,值得学习。

1. 调试Bug的神兵利器&#xff1a;通过WinDbg条件断点收集Log 原文地址&#xff1a;http://blogs.msdn.com/yizhang/archive/2009/03/30/bug-windbg-log.aspx 调试Bug的神兵利器&#xff1a;通过WinDbg条件断点收集Log 前段时间花了几天一直在用WinDbg调试一个比较棘手的Bug。…

设计模式之观察者

观察者模式介绍观察者又名事件订阅者、监听者。观察者模式是一种行为设计模式&#xff0c;允许你定义一种订阅机制&#xff0c;可在对象事件发生时通知多个“观察者”该对象的其他对象。通知目标&#xff1a;拥有一些值得关注的状态的对象。发布者&#xff1a;它要自身的状态改…

热姜水的神奇妙用

人们通常会在着凉以后&#xff0c;泡一壶姜茶来喝&#xff0c;来预防感冒&#xff0c;其实热姜水除了这个作用以外还有几大作用的。     醉酒 用热姜水代茶饮用&#xff0c;可消化体内酒精。脚臭 热姜水中加点盐和醋&#xff0c;浸泡双脚15分钟左右&#xff0c;脚臭便可消…

二面京东被问到Java 反射,我直呼好家伙,这我不是必过吗?

二面京东被问到Java 反射&#xff0c;我直呼好家伙&#xff0c;这我不是必过吗&#xff1f;用多久我会升职加薪、当上技术总监、迎娶漂亮学姐、走上人生巅峰&#xff01;想想还有点小激动。 好了开始分享面试经历 说说你反射的理解 到底什么是反射呢&#xff1f;&#xff1f;…

通用路由封装(GRE)×××配置

本人没有很好的文采&#xff0c;只能直接配置&#xff0c;有不懂的地方&#xff0c;后面可以联系我&#xff0c;在配置当中&#xff0c;我会尽量在配置命令后面加标注。1、在R1上配置相关的命令R1&#xff08;config&#xff09;#int fa0/0 ---进入以太网fa0/0接口--R1&#…

数字怎么横 竖排_从这些数字更深入了解打包箱房

很多人对于彩钢房和一般瓦楞版集装箱活动房可能比较了解&#xff0c;但是对于打包箱房就相对了解甚少&#xff0c;这里通过一组数字来告诉大家&#xff0c;打包箱房到底怎么样&#xff1f;一、打包箱房标准房子的标准为外部(3米X 6米X2.7米)、内部是(2.83米X5.83米X2.52米)二、…

gridview DataFormatString

转有个时间要在gridview中显示,但是保持着数据库中的是标准时间,很长,而且只需要显示日期,就想要格式化字符串,可是设置了DataFormatString就是不起作用,后来一查,原来要设置"行为"中HtmlEncode false DataFormatString"{0:格式字符串}" 在DataFormatStri…

太神奇了!使用C#实现自动核验健康码:(1)二维码识别

前言因为疫情的原因&#xff0c;无论是进入商场还是医院、车站&#xff0c;都需要出示健康码。现在基本都是采取人工方式核验健康码&#xff0c;看到绿码就通过&#xff0c;否则就禁止进入。但是&#xff0c;单靠人工核验健康码容易造成人员拥堵&#xff0c;增加病毒交叉感染的…

三角形中惊现叛徒!自己胖的像个球,却能成就世界上最快的赛车引擎......

全世界只有3.14 % 的人关注了青少年数学之旅一日&#xff0c;理科生上山寻访禅师。理科生问禅师&#xff1a;“大师&#xff0c;世人为何总嫌我棱角太突出&#xff0c;不合群&#xff01;”禅师思索一阵&#xff0c;掏出数根圆柱铺在地上&#xff0c;在上面搁了一块木板&#x…

无线专业术语

1. IEEE 802.11b IEEE 802.11b是IEEE&#xff08;电气和电子工程师协会&#xff09;1999年9月推出的一个无线局域网标准&#xff0c;采取2.4GHz频段&#xff0c;传输速率最高11Mbps。 2 IEEE 802.11g IEEE 802.11g是IEEE 802.11b标准的继承者&#xff0c;它提供高达54M…

Primes on Interval

AC代码&#xff1a; #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> using namespace std; const int maxn 1001000; #define inf (1<<29) //上面的位运算还真心没有看懂 // p[i] is i-th primes position b…

我丢,去面试初级Java开发岗位,被问到泛型?

1、泛型的基础概念 1.1 为什么需要泛型 List list new ArrayList();//默认类型是Objectlist.add("A123");list.add("B234");list.add("C345");System.out.println(list);for(int i0;i<list.size();i){//若要将list中的元素赋给String变量&a…

xp下设置文件的权限(转)

第一步&#xff1a; 1&#xff0c;我的电脑&#xff0d;&#xff0d;工具&#xff0d;&#xff0d;文件夹选项&#xff0d;&#xff0d;查看 去掉”使用简单文件共享”的选中状态&#xff0e;确定 第二步&#xff1a; 右击 D 盘 &#xff0d;&#xff0d; 安全 &#xff0d;&am…

echart 地图 某个地区_中国饮食地图来袭!你爱的口味暗藏健康隐患吗?

食&#xff0c;既是人生存之根本&#xff0c;也是人们热爱生活的体现。中国地域广阔、物产富饶&#xff0c;中国人对“吃”看重也愿钻研&#xff0c;种种因素造就了中国美食 “百花齐放”的局面&#xff0c;在“吃货”眼里&#xff0c;中国地图俨然就是一张美食地图。不同地区的…

面试官:实现一个带值变更通知能力的Dictionary

如题&#xff0c; 你知道字典KEY对应的Value什么时候被覆盖了吗&#xff1f;最近大家都在追.Net6 update&#xff0c;咱还是保持节奏&#xff0c;通用语言聊技术。没背景说个铲铲上文中 数据获取组件维护了业务方所有(在用)的连接对象&#xff0c;DBA能在后台无侵入的切换备份库…

颠覆认知!完美赌徒,到底是如何用数学打造经济神话?!

▲ 点击查看说起世界上最会赚钱的数学家&#xff0c;非詹姆斯西蒙斯莫属。1938年&#xff0c;西蒙斯出生于美国的马萨诸塞州&#xff0c;是一个鞋厂的儿子。在其他的孩子&#xff0c;还在听童话故事的时候&#xff0c;西蒙斯就已经开始展露出惊人的数学天赋了。3岁的时候&…

数据源的配置和使用 视频下载

[浪曦][原创][A362]数据源的配置和使用(BLing原创)&#xff0c;请用迅雷下载&#xff0c;可能需要注册&#xff01; 包括servlet调用数据源&#xff0c;spring调用数据源转载于:https://blog.51cto.com/huqianhao/955256

ubuntu apt-get常用命令

常用的APT命令参数   apt-cache search package 搜索包   apt-cache show package 获取包的相关信息&#xff0c;如说明、大小、版本等   sudo apt-get install package 安装包   sudo apt-get install package - - reinstall 重新安装包   sudo apt-get -f ins…

abs函数的使用方法 oracle_SQL Server 常用函数使用方法

1、SubString()&#xff1a;用于截取指定字符串的方法。该方法有三个参数&#xff1a;参数1&#xff1a;用于指定要操作的字符串。参数2&#xff1a;用于指定要截取的字符串的起始位置&#xff0c;起始值为 1 。参数3&#xff1a;用于指定要截取的长度。select substring(abcde…

高考落榜怎么办,奉劝学弟学妹们一些事情,请一定要擦亮眼睛

在目前这个社会情况Java技术是当前社会的一个热门专业&#xff0c;无论是pc端还是移动端对java的需求都是最多的&#xff0c;大学生学java正好顺应时代的发展&#xff0c;不仅有钱途还有前途&#xff0c;Java也适合零基础的人学习。 最近看见一句话 高考不努力&#xff0c;学习…