发一个自己写的ADODB LITE 分页类
时间:2007-06-02
来源:互联网
PHP代码:
class Ado_page{var $conn; //数据库连接
var $sql; //SQL
var $pagesize; //PageSize
var $totlapage; //page总记录数
var $getPagenumber; //当前页面ID号
var $rs; //记录集
var $url; //URL
var $page_name = "recordPage"; //GET pgaeID
var $length=10; //Length 长度
var $Style; //样式
function setPage(&$conn,$sql_lite,$pagesize){
$this->sql = $sql_lite;
$this->pagesize = $pagesize;
$this->conn = &$conn;
$this->totlapage = $this->rowCount();
$this->getPagenumber= $this->setPagenumber();
$this->getPage();
}
function setPagenumber(){
$recordPage=$_GET[$this->page_name];
if($recordPage>0){
return $recordPage;
}else{
return 1;
}
}
function getLast(){//取的最后一页
return ceil($this->totlapage/$this->pagesize);
}
function getFrist(){//取的第一页
return true;
}
function getNext(){
if($this->getLast()>$this->getPagenumber){
return $this->getPagenumber+1;
}else if ($this->getLast()==$this->getPagenumber){
return $this->getPagenumber;
}
}
function getPerv(){
if($this->getPagenumber>1 ){
if($this->getLast()>=$this->getPagenumber){
return $this->getPagenumber-1;
}
}
}
function GetLinks($url=""){
if(!empty($url)){
//手动设置
$this->url=$url.((stristr($url,'?'))?'&':'?').$this->page_name."=";
return $this->url;
}else{
//自动获取
if(empty($_SERVER['QUERY_STRING'])){
//不存在QUERY_STRING时
$this->url=$_SERVER['REQUEST_URI']."?".$this->page_name."=";
return $this->url;
}else{
//
if(stristr($_SERVER['QUERY_STRING'],$this->page_name.'=')){
//地址存在页面参数
$this->url=str_replace($this->page_name.'='.$_REQUEST[$this->page_name],'',$_SERVER['REQUEST_URI']);
//echo $this->nowindex;
$last=$this->url[strlen($this->url)-1];
if($last=='?'||$last=='&'){
$this->url.=$this->page_name."=";
return $this->url;
}else{
$this->url.='&'.$this->page_name."=";
return $this->url;
}
}else{
$this->url=$_SERVER['REQUEST_URI'].'&'.$this->page_name.'=';
return $this->url;
}//end if
}//end if
}//end if
}
function SetLink(){
return 'http://'.$_SERVER['HTTP_HOST'].$this->GetLinks();
}
function getPage(){
$recordrs=$this->conn->SelectLimit($this->sql ,$this->pagesize,($this->getPagenumber -1)*$this->pagesize);
if($this->rs->EOF){
$this->rs=false;
}else{
$this->rs=$recordrs;
}
}
function pageStyle($newstyle=1){ //连接样式
global $_LANG;
$string1='<a class="style_'.$this->Style.'" href="'.$this->SetLink().$this->getFrist().'">'.$_LANG->First_page.'</a>';
$string1.=' <a class="style_'.$this->Style.'" href="'.$this->SetLink().$this->getPerv().'">'.$_LANG->;Perv_page.'</a>';
$string1.=' <a class="style_'.$this->Style.'" href="'.$this->SetLink().$this->getNext().'">'.$_LANG->Next_page.'</a>';
$string1.=' <a class="style_'.$this->Style.'" href="'.$this->SetLink().$this->getLast().'">'.$_LANG->Last_page.'</a>';
$string_to=' 本页为第'.$this->getPagenumber.'/'.$this->getLast().'页,共'.$this->getLast().'页,每页'.$this->pagesize.'条,'; /* */
$string_to.='记录总数 '.$this->totlapage.' 条';
$string2=$this->listStyle();
$string3=$this->selectStyle();
switch($newstyle){
case 1:
$string=$string1;
break;
case 2:
$string=$string1.$string_to;
break;
case 3:
$string=$string1.$string_to.$string2;
break;
case 4:
$string=$string1.$string3;
break;
case 5:
$string=$string2;
break;
default :
$string=$string1;
break;
}
return $string;
}
function selectStyle(){
$option="<select name='selectID' onChange=\"javascript:location.href='".$this->SetLink()."' +this.options[this.selectedIndex].value\">";
for($i=1;$i<$this->getLast();$i++){
$option.="<option value='".$i." '";
if($this->getPagenumber==$i){
$option.= " selected";
}
$option.=">".$i."</option>";
}
$option.="</select>";
return $option;
}
作者: topflying 发布时间: 2007-06-02
PHP代码:
function listStyle(){$startNumber=intval($this->getPagenumber/$this->length)*$this->length;
$leftPageNumber=0;
$style.='<a href="'.$this->SetLink().$this->getPerv().'"><<</a> ';
for($i=$startNumber;$i<$this->getLast()+1;$i++){
if ($i==0)continue;
if ($i-$startNumber<$this->length){
if ($i==$this->getPagenumber){
$style .= '<a href="#" class="style_'.$this->Style.'" ><strong>'.$i.'</strong></a> ';
}else{
$style .= '<a class="style_'.$this->Style.'" href="'.$this->SetLink().$i.'">'.$i.'</a> ';
}
}else{
$leftPageNumber=$this->getLast()-$i+1;
break;
}
}
$style.=' <a href="'.$this->SetLink().$this->getNext().'">>></a>';
return $style;
}
function rowCount(){ //取的记录总数
$rs=$this->conn->Execute($this->sql);
return $rs->RecordCount();
}
function fields($id){
return $this->rs->fields($id);
}
function MoveNext(){
return $this->rs->MoveNext();
}
function GetArray(){
return $this->rs->GetArray();
}
function Close(){
return $this->rs->Close();
}
function RecordCount(){
return $this->rs->RecordCount();
}
function FetchRow(){
return $this->rs->FetchRow();
}
function EOF(){
return $this->rs->EOF();
}
function BOF(){
return $this->rs-BOF();
}
}//end class
//调用实例
$rs=new Ado_page();
$sql="select * from table where 1=1";
$sql.=" order by intOrder asc,id desc";
$rs->setPage($conn,$sql,12);
echo $rs->pageStyle(3);
作者: topflying 发布时间: 2007-06-02
・ 向普通人加密 用PHP程序保护数据 | 06-02 | 15 |
・ Apache重写规则的常见应用及实例说明 | 06-02 | 15 |
・ 安装JDK 就可同时运行PHP和Java? | 06-02 | 15 |
・ PHPer为什么被认为是草根? | 06-02 | 15 |
・ 草根的进化 PHP语言发展简史 | 06-02 | 15 |
・ 自己在做项目过程中学到的PHP知识收集 | 06-02 | 16 |
・ 安全基础之IIS 6 的 PHP 最佳配置方法 | 06-02 | 15 |
作者: baowm 发布时间: 2007-06-03
作者: topflying 发布时间: 2007-06-06
作者: xiaojia 发布时间: 2007-06-06
作者: sanler 发布时间: 2007-06-07

作者: atree1984 发布时间: 2008-05-10
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28