当前位置: 首页 > 图文教程 > 网络编程 > PHP > php分页类

PHP
挑战最棒的留言本的源码(三)
php抓即时股票信息
挑战最棒的留言本的源码(四)
使用网络地址转换实现多服务器负载均衡
挑战最棒的留言本的源码(五)
屏蔽浏览器缓存另类方法
PHP脚本数据库功能详解(上)
PHP脚本数据库功能详解(中)
PHP脚本数据库功能详解(下)
一个用mysql_odbc和php写的serach数据库程序
一个简单计数器的源代码
文件上传程序的全部源码
计算2000年01月01日起到指定日的天数
通过文字传递创建的图形按钮
如何在WIN2K下安装PHP4.04
新闻分类录入、显示系统
在字符串中把网址改成超级链接
Php做的端口嗅探器--可以指定网站和端口
不用数据库的多用户文件自由上传投票系统(2)
一个简单的域名注册情况查询程序

PHP 中的 php分页类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 253 ::
收藏到网摘: n/a

<?php
//
// +----------------------------------------------------------------------+
// | 分页类                                |
// +----------------------------------------------------------------------+
// | Copyright (c) 2001 NetFish Software                 |
// |                                   |
// | Author: whxbb([email protected])                    |
// +----------------------------------------------------------------------+
//
// $Id: pager.class.php,v 0.1 2001/8/2 13:18:13 yf Exp $
//
// 禁止直接访问该页面
if (basename($HTTP_SERVER_VARS['PHP_SELF']) == "pager.class.php") {
   header("HTTP/1.0 404 Not Found");
}
/**
* 分页类
* Purpose
* 分页
*
* @author : whxbb([email protected])
* @version : 0.1
* @date  : 2001/8/2
*/
class Pager
{
   /** 总信息数 */
   var $infoCount;
   /** 总页数 */
   var $pageCount;
   /** 每页显示条数 */
   var $items;
   /** 当前页码 */
   var $pageNo;
   /** 查询的起始位置 */
   var $startPos;
   var $nextPageNo;
   var $prevPageNo;
   
   function Pager($infoCount, $items, $pageNo)
   {
     $this->infoCount = $infoCount;
     $this->items   = $items;
     $this->pageNo  = $pageNo;
     $this->pageCount = $this->GetPageCount();
     $this->AdjustPageNo();
     $this->startPos = $this->GetStartPos();
   }
   function AdjustPageNo()
   {
     if($this->pageNo == '' || $this->pageNo < 1)
       $this->pageNo = 1;
     if ($this->pageNo > $this->pageCount)
       $this->pageNo = $this->pageCount;
   }
   /**
    * 下一页
    */
   function GoToNextPage()
   {
     $nextPageNo = $this->pageNo + 1;
     if ($nextPageNo > $this->pageCount)
     {
       $this->nextPageNo = $this->pageCount;
       return false;
     }
     $this->nextPageNo = $nextPageNo;
     return true;
   }
   /**
    * 上一页
    */
   function GotoPrevPage()
   {
     $prevPageNo = $this->pageNo - 1;
     if ($prevPageNo < 1)
     {
       $this->prevPageNo = 1;
       return false;
     }
     $this->prevPageNo = $prevPageNo;
     return true;
   }
   function GetPageCount()
   {
     return ceil($this->infoCount / $this->items);
   }
   function GetStartPos()
   {
     return ($this->pageNo - 1) * $this->items;
   }
}
?>