php顯示頁(yè)碼分頁(yè)類(lèi)的封裝
更新時(shí)間:2017年06月08日 10:08:35 作者:cakin24
這篇文章主要為大家詳細(xì)介紹了php封裝一個(gè)顯示頁(yè)碼的分頁(yè)類(lèi),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
本文實(shí)例為大家分享了php封裝顯示頁(yè)碼的分頁(yè)類(lèi),供大家參考,具體內(nèi)容如下
一、代碼
conn.php
<?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
<link rel="stylesheet" type="text/css" href="css/style.css" rel="external nofollow" > <?php include_once("conn.php");//包含conn.php文件 class Page extends Mysql{//創(chuàng)建Page類(lèi)并繼承Mysql類(lèi) private $pagesize;//每頁(yè)顯示的記錄數(shù) private $page;//當(dāng)前是第幾頁(yè) private $pages;//總頁(yè)數(shù) private $total;//查詢(xún)的總記錄數(shù) private $pagelen;//顯示的頁(yè)碼數(shù) private $pageoffset;//頁(yè)碼的偏移量 private $table;//欲查詢(xún)的表名 function __construct($pagesize,$pagelen,$table){ if($_GET['page']=="" || $_GET['page']<0){//判斷地址欄參數(shù)page是否有值 $this->page=1;//當(dāng)前頁(yè)定義為1 }else{ $this->page=$_GET['page'];//當(dāng)前頁(yè)為地址欄參數(shù)的值 } $this->pagesize=$pagesize; $this->pagelen=$pagelen; $this->table=$table; new Mysql();//實(shí)例化Mysql類(lèi) $sql=mysql_query("select * from $this->table");//查詢(xún)表中的記錄 $this->total=mysql_num_rows($sql);//獲得查詢(xún)的總記錄數(shù) $this->pages=ceil($this->total/$this->pagesize);//計(jì)算總頁(yè)數(shù) $this->pageoffset=($this->pagelen-1)/2;//計(jì)算頁(yè)碼偏移量 } function sel(){ $sql=mysql_query("select * from $this->table limit ".($this->page-1)*$this->pagesize.",".$this->pagesize);//查詢(xún)當(dāng)前頁(yè)顯示的記錄 return $sql;//返回查詢(xún)結(jié)果 } function myPage(){ $message="第".$this->page."頁(yè)/共".$this->pages."頁(yè) ";//輸出當(dāng)前第幾頁(yè),共幾頁(yè) if($this->page==1){//如果當(dāng)前頁(yè)是1 $message.="首頁(yè) 上一頁(yè) ";//輸出沒(méi)有鏈接的文字 }else{ $message.="<a href='".$_SERVER['PHP_SELF']."?page=1'>首頁(yè)</a> ";//輸出有鏈接的文字 $message.="<a href='".$_SERVER['PHP_SELF']."?page=".($this->page-1)."'>上一頁(yè)</a> ";//輸出有鏈接的文字 } if($this->page<=$this->pageoffset){//如果當(dāng)前頁(yè)小于頁(yè)碼的偏移量 $minpage=1;//顯示的最小頁(yè)數(shù)為1 $maxpage=$this->pagelen;//顯示的最大頁(yè)數(shù)為頁(yè)碼的值 }elseif($this->page>$this->pages-$this->pageoffset){//如果當(dāng)前頁(yè)大于總頁(yè)數(shù)減去頁(yè)碼的偏移量 $minpage=$this->pages-$this->pagelen+1;//顯示的最小頁(yè)數(shù)為總頁(yè)數(shù)減去頁(yè)碼數(shù)再加上1 $maxpage=$this->pages;//顯示的最大頁(yè)數(shù)為總頁(yè)數(shù) }else{ $minpage=$this->page-$this->pageoffset;//顯示的最小頁(yè)數(shù)為當(dāng)前頁(yè)數(shù)減去頁(yè)碼的偏移量 $maxpage=$this->page+$this->pageoffset;//顯示的最大頁(yè)數(shù)為當(dāng)前頁(yè)數(shù)加上頁(yè)碼的偏移量 } for($i=$minpage;$i<=$maxpage;$i++){//循環(huán)輸出數(shù)字頁(yè)碼數(shù) if($i==$this->page){ $message.=$i."\n";//輸出沒(méi)有鏈接的數(shù)字 }else{ $message.="<a id='num' href='".$_SERVER['PHP_SELF']."?page=".$i."'>".$i."</a>\n";//輸出有鏈接的數(shù)字 } } if($this->page==$this->pages){//如果當(dāng)前頁(yè)等于最大頁(yè)數(shù) $message.=" 下一頁(yè) 尾頁(yè)";//顯示沒(méi)有鏈接的文字 }else{ $message.=" <a href='".$_SERVER['PHP_SELF']."?page=".($this->page+1)."'>下一頁(yè)</a> ";//顯示有鏈接的文字 $message.="<a href='".$_SERVER['PHP_SELF']."?page=".$this->pages."'>尾頁(yè)</a>";//顯示有鏈接的文字 } return $message;//返回變量的值 } } ?> <table border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#FF0000"> <tr> <td style="padding-left:3px; padding-right:3px; padding-top:3px; padding-bottom:3px;" bgcolor="#FFFFFF">ID:</td> <td style="padding-left:3px; padding-right:3px; padding-top:3px; padding-bottom:3px;" bgcolor="#FFFFFF">標(biāo)題</td> <td style="padding-left:3px; padding-right:3px; padding-top:3px; padding-bottom:3px;" bgcolor="#FFFFFF">內(nèi)容</td> <td style="padding-left:3px; padding-right:3px; padding-top:3px; padding-bottom:3px;" bgcolor="#FFFFFF">時(shí)間</td> </tr> <?php $p=new Page('3','3','tb_demo01'); $rs=$p->sel(); while($rst=mysql_fetch_row($rs)){ ?> <tr> <td style="padding-left:3px; padding-right:3px; padding-top:3px; padding-bottom:3px;" bgcolor="#FFFFFF"><?php echo $rst[0] ?></td> <td style="padding-left:3px; padding-right:3px; padding-top:3px; padding-bottom:3px;" bgcolor="#FFFFFF"><?php echo $rst[1] ?></td> <td style="padding-left:3px; padding-right:3px; padding-top:3px; padding-bottom:3px;" bgcolor="#FFFFFF"><?php echo $rst[2] ?></td> <td style="padding-left:3px; padding-right:3px; padding-top:3px; padding-bottom:3px;" bgcolor="#FFFFFF"><?php echo $rst[3] ?></td> </tr> <?php }?> </table> <?php echo $p->myPage(); ?>
二、運(yùn)行結(jié)果
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- PHP封裝的page分頁(yè)類(lèi)定義與用法完整示例
- PHP封裝的完整分頁(yè)類(lèi)示例
- php封裝的page分頁(yè)類(lèi)完整實(shí)例
- ThinkPHP使用心得分享-分頁(yè)類(lèi)Page的用法
- PHP通用分頁(yè)類(lèi)page.php[仿google分頁(yè)]
- php分頁(yè)原理 分頁(yè)代碼 分頁(yè)類(lèi)制作教程
- 兩款萬(wàn)能的php分頁(yè)類(lèi)
- 高效mongodb的php分頁(yè)類(lèi)(不使用skip)
- PHP ajax 分頁(yè)類(lèi)代碼
- PHP封裝的分頁(yè)類(lèi)與簡(jiǎn)單用法示例
相關(guān)文章
Yii使用ajax驗(yàn)證顯示錯(cuò)誤messagebox的解決方法
這篇文章主要介紹了Yii使用ajax驗(yàn)證顯示錯(cuò)誤messagebox的解決方法,可以自行設(shè)置Ajax提示信息的方式,是非常實(shí)用的技巧,需要的朋友可以參考下2014-12-12yii使用bootstrap分頁(yè)樣式的實(shí)例
本篇文章主要介紹了yii使用bootstrap分頁(yè)樣式的實(shí)例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-01-01Laravel框架運(yùn)行出錯(cuò)提示RuntimeException No application encryption ke
這篇文章主要介紹了Laravel框架運(yùn)行出錯(cuò)提示RuntimeException No application encryption key has been specified.解決方法,涉及Laravel框架相關(guān)配置、設(shè)置與運(yùn)行操作技巧,需要的朋友可以參考下2019-04-04