google 翻页改装
时间:2009-05-01
来源:互联网
<?php
/****************************
By:donnier
****************************/
class classPage{
private $urlstr;
private $row;
private $pages;
private $page;
private $prevs;
private $prev;
private $nexts;
private $next;
public $limit;
public $pre;
public $pagestr;
function __construct($row,$pre=10){
$this->row=$row;
$this->pre=$pre;
$this->pages=ceil($this->row/$this->pre);
$this->page=(isset($_GET['page'])&&$_GET['page']>0&&$_GET['page']<=$this->pages)?intval($_GET['page']):1;
$this->limit=($this->page-1)*$this->pre;
$this->prevs=($this->page-4<1)?1:$this->page-4;
$this->prev=($this->page-1<1)?1:$this->page-1;
$this->nexts=($this->page+5>$this->pages)?$this->pages:$this->page+5;
$this->next=($this->page+1>$this->pages)?$this->pages:$this->page+1;
$this->urlstr=$this->funGeturl();
$this->pagestr=$this->funPage();
}
function funGeturl(){
$urlqueryname='page=';
$urlpath=explode('/',isset($_SERVER['PHP_SELF'])?$_SERVER['PHP_SELF']:$_SERVER['SCRIPT_NAME']);
$urlpage=$urlpath[count($urlpath)-1];
$urlquery=isset($_SERVER['QUERY_STRING'])?$_SERVER['QUERY_STRING']:'';
if($urlquery){
if(strstr($urlquery,$urlqueryname)){$urlstr=$urlpage.'?'.substr($urlquery,0,strpos($urlquery,$urlqueryname));}
else{$urlstr=$urlpage.'?'.$urlquery.'&';}
}else{$urlstr=$urlpage.'?';}
return $urlstr;
}
function funPage(){
$pagestr.="<span>{$this->page}/{$this->pages}</span>";
if($this->page!=1){
$pagestr.="<a href=\"{$this->urlstr}page=1\">首页</a>";
$pagestr.="<a href=\"{$this->urlstr}page={$this->prev}\">上一页</a>";
}else{
$pagestr.="<span>首页</span>";
$pagestr.="<span>上一页</span>";
}
for($i=$this->prevs;$i<$this->page;$i++){$pagestr.="<a href=\"{$this->urlstr}page={$i}\">{$i}</a>";}
$pagestr.="<span class=s>{$this->page}</span>";
for($i=$this->page+1;$i<=$this->nexts;$i++){$pagestr.="<a href=\"{$this->urlstr}page={$i}\">{$i}</a>";}
if($this->page!=$this->pages){
$pagestr.="<a href=\"{$this->urlstr}page={$this->next}\">下一页</a>";
$pagestr.="<a href=\"{$this->urlstr}page={$this->pages}\">尾页</a>";
}else{
$pagestr.="<span>下一页</span>";
$pagestr.="<span>尾页</span>";
}
return $pagestr;
}
}
?>
include('inc/classDb.php');
include('inc/classPage.php');
$db=new classDb;
$db->funConnect();
$db->funSelect('test');
$db->funQuery("select count(*) from user");
$row=$db->funResult();
$pages=$row[0];
$page=new classPage($pages,10);
$db->funQuery("select * from user limit $page->limit,$page->pre");
while($row=$db->funResult()){
echo $row['id'].$row['name']."<hr>\n";
}
echo $page->pagestr;
?>
/****************************
By:donnier
****************************/
class classPage{
private $urlstr;
private $row;
private $pages;
private $page;
private $prevs;
private $prev;
private $nexts;
private $next;
public $limit;
public $pre;
public $pagestr;
function __construct($row,$pre=10){
$this->row=$row;
$this->pre=$pre;
$this->pages=ceil($this->row/$this->pre);
$this->page=(isset($_GET['page'])&&$_GET['page']>0&&$_GET['page']<=$this->pages)?intval($_GET['page']):1;
$this->limit=($this->page-1)*$this->pre;
$this->prevs=($this->page-4<1)?1:$this->page-4;
$this->prev=($this->page-1<1)?1:$this->page-1;
$this->nexts=($this->page+5>$this->pages)?$this->pages:$this->page+5;
$this->next=($this->page+1>$this->pages)?$this->pages:$this->page+1;
$this->urlstr=$this->funGeturl();
$this->pagestr=$this->funPage();
}
function funGeturl(){
$urlqueryname='page=';
$urlpath=explode('/',isset($_SERVER['PHP_SELF'])?$_SERVER['PHP_SELF']:$_SERVER['SCRIPT_NAME']);
$urlpage=$urlpath[count($urlpath)-1];
$urlquery=isset($_SERVER['QUERY_STRING'])?$_SERVER['QUERY_STRING']:'';
if($urlquery){
if(strstr($urlquery,$urlqueryname)){$urlstr=$urlpage.'?'.substr($urlquery,0,strpos($urlquery,$urlqueryname));}
else{$urlstr=$urlpage.'?'.$urlquery.'&';}
}else{$urlstr=$urlpage.'?';}
return $urlstr;
}
function funPage(){
$pagestr.="<span>{$this->page}/{$this->pages}</span>";
if($this->page!=1){
$pagestr.="<a href=\"{$this->urlstr}page=1\">首页</a>";
$pagestr.="<a href=\"{$this->urlstr}page={$this->prev}\">上一页</a>";
}else{
$pagestr.="<span>首页</span>";
$pagestr.="<span>上一页</span>";
}
for($i=$this->prevs;$i<$this->page;$i++){$pagestr.="<a href=\"{$this->urlstr}page={$i}\">{$i}</a>";}
$pagestr.="<span class=s>{$this->page}</span>";
for($i=$this->page+1;$i<=$this->nexts;$i++){$pagestr.="<a href=\"{$this->urlstr}page={$i}\">{$i}</a>";}
if($this->page!=$this->pages){
$pagestr.="<a href=\"{$this->urlstr}page={$this->next}\">下一页</a>";
$pagestr.="<a href=\"{$this->urlstr}page={$this->pages}\">尾页</a>";
}else{
$pagestr.="<span>下一页</span>";
$pagestr.="<span>尾页</span>";
}
return $pagestr;
}
}
?>
include('inc/classDb.php');
include('inc/classPage.php');
$db=new classDb;
$db->funConnect();
$db->funSelect('test');
$db->funQuery("select count(*) from user");
$row=$db->funResult();
$pages=$row[0];
$page=new classPage($pages,10);
$db->funQuery("select * from user limit $page->limit,$page->pre");
while($row=$db->funResult()){
echo $row['id'].$row['name']."<hr>\n";
}
echo $page->pagestr;
?>
作者: donnier 发布时间: 2009-05-01
帮你顶下

作者: evangui 发布时间: 2009-05-01
thanks
作者: donnier 发布时间: 2009-05-02
支持一下。
作者: zhaozhan 发布时间: 2009-05-02
这么写出来不弄用的啊!~~
作者: 54181645 发布时间: 2009-05-04
这个类,还有可以改进的地方。
楼上几位,这需要有一个数据表user,里面装着数据。
楼上几位,这需要有一个数据表user,里面装着数据。
作者: cwk32 发布时间: 2009-05-04
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28