日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

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

發(fā)布時(shí)間:2023/12/4 php 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 phppage类封装分页功能_php显示页码分页类的封装 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本文實(shí)例為大家分享了php封裝顯示頁碼的分頁類,供大家參考,具體內(nèi)容如下

一、代碼

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{//創(chuàng)建Page類并繼承Mysql類

private $pagesize;//每頁顯示的記錄數(shù)

private $page;//當(dāng)前是第幾頁

private $pages;//總頁數(shù)

private $total;//查詢的總記錄數(shù)

private $pagelen;//顯示的頁碼數(shù)

private $pageoffset;//頁碼的偏移量

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

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

if($_GET['page']=="" || $_GET['page']<0){//判斷地址欄參數(shù)page是否有值

$this->page=1;//當(dāng)前頁定義為1

}else{

$this->page=$_GET['page'];//當(dāng)前頁為地址欄參數(shù)的值

}

$this->pagesize=$pagesize;

$this->pagelen=$pagelen;

$this->table=$table;

new Mysql();//實(shí)例化Mysql類

$sql=mysql_query("select * from $this->table");//查詢表中的記錄

$this->total=mysql_num_rows($sql);//獲得查詢的總記錄數(shù)

$this->pages=ceil($this->total/$this->pagesize);//計(jì)算總頁數(shù)

$this->pageoffset=($this->pagelen-1)/2;//計(jì)算頁碼偏移量

}

function sel(){

$sql=mysql_query("select * from $this->table limit ".($this->page-1)*$this->pagesize.",".$this->pagesize);//查詢當(dāng)前頁顯示的記錄

return $sql;//返回查詢結(jié)果

}

function myPage(){

$message="第".$this->page."頁/共".$this->pages."頁???";//輸出當(dāng)前第幾頁,共幾頁

if($this->page==1){//如果當(dāng)前頁是1

$message.="首頁?上一頁???";//輸出沒有鏈接的文字

}else{

$message.="首頁?";//輸出有鏈接的文字

$message.="page-1)."'>上一頁??";//輸出有鏈接的文字

}

if($this->page<=$this->pageoffset){//如果當(dāng)前頁小于頁碼的偏移量

$minpage=1;//顯示的最小頁數(shù)為1

$maxpage=$this->pagelen;//顯示的最大頁數(shù)為頁碼的值

}elseif($this->page>$this->pages-$this->pageoffset){//如果當(dāng)前頁大于總頁數(shù)減去頁碼的偏移量

$minpage=$this->pages-$this->pagelen+1;//顯示的最小頁數(shù)為總頁數(shù)減去頁碼數(shù)再加上1

$maxpage=$this->pages;//顯示的最大頁數(shù)為總頁數(shù)

}else{

$minpage=$this->page-$this->pageoffset;//顯示的最小頁數(shù)為當(dāng)前頁數(shù)減去頁碼的偏移量

$maxpage=$this->page+$this->pageoffset;//顯示的最大頁數(shù)為當(dāng)前頁數(shù)加上頁碼的偏移量

}

for($i=$minpage;$i<=$maxpage;$i++){//循環(huán)輸出數(shù)字頁碼數(shù)

if($i==$this->page){

$message.=$i."\n";//輸出沒有鏈接的數(shù)字

}else{

$message.="".$i."\n";//輸出有鏈接的數(shù)字

}

}

if($this->page==$this->pages){//如果當(dāng)前頁等于最大頁數(shù)

$message.="??下一頁?尾頁";//顯示沒有鏈接的文字

}else{

$message.="??page+1)."'>下一頁?";//顯示有鏈接的文字

$message.="pages."'>尾頁";//顯示有鏈接的文字

}

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

}

}

?>

ID:標(biāo)題內(nèi)容時(shí)間

$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();

?>

二、運(yùn)行結(jié)果

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的phppage类封装分页功能_php显示页码分页类的封装的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。