PHP翻页的一个类

原创 2004年06月23日 02:42:00

/* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+------------------------------------------------------------+
| Filename.......: pagenav.php |
| Project........: 大白菜芯 翻 页 |
| Version........: 2.0.0 |
| Last Modified..: 2003-01-16 |
+------------------------------------------------------------+
| Author.........: wapweb(tyler.wu) <java@cu165.com> |
| Homepage.......: http://tjsohu.com |
| Support........: http://tjsohu.com |
+------------------------------------------------------------+
| Copyright ? 2004 tjsohu.com Team. All rights reserved. |
+------------------------------------------------------------+
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
error_reporting(7);

class buildNav{

var $limit;
var $execute,$query;
var $total_result = 0;
var $offset = "offset";

 

function buildNav($Public,$objClass)
{
$this->Public=$Public;
$this->theClass = $objClass ;
}

function execute($query,$limit){

// global $product;
$GLOBALS[$this->offset] = (!isset($GLOBALS[$this->offset]) OR $GLOBALS[$this->offset]<0) ? 0 : $GLOBALS[$this->offset];
//$this->sql_result = $DB->query($query);

$GLOBALS[$this->offset] = ($GLOBALS[$this->offset]>$this->total_result) ? $this->total_result-10 : $GLOBALS[$this->offset];

if (empty($this->limit)) {
$this->limit = 20;
}else{
$this->limit = $limit;
}

if (isset($this->limit)) {
$query .= " LIMIT " . $GLOBALS[$this->offset] . ", $this->limit";
$this->sql_result = $this->Public->query($query);
$this->num_pages = ceil($this->total_result/$this->limit);
}
if ($GLOBALS[$this->offset]+1 > $this->total_result) {
$GLOBALS[$this->offset] = $this->total_result-1;
}

}


function show_num_pages($frew = "?", $rew = '上一页', $ffwd = '?', $fwd = '下一页', $separator = '') {


$current_pg = $GLOBALS[$this->offset]/$this->limit+1;
if ($current_pg > '5') {
$fgp = ($current_pg-5 > 0) ? $current_pg-5 : 1;
$egp = $current_pg+4;
if ($egp > $this->num_pages) {
$egp = $this->num_pages;
$fgp = ($this->num_pages-9 > 0) ? $this->num_pages-9 : 1;
}
} else {
$fgp = 1;
$egp = ($this->num_pages >= 10) ? 10 : $this->num_pages;
}
if($this->num_pages > 1) {
// searching for http_get_vars
foreach ($GLOBALS[HTTP_GET_VARS] as $_get_name => $_get_value) {
if ($_get_name != $this->offset) {
$this->_get_vars .= "&$_get_name=$_get_value";
}
}
$this->listNext = $GLOBALS[$this->offset] + $this->limit;
$this->listPrev = $GLOBALS[$this->offset] - $this->limit;
// $this->theClass = $objClass;
if (!empty($rew)) { //$separator [$frew] $rew
$return .= ($GLOBALS[$this->offset] > 0) ? "offset=0$this->_get_vars/" $this->theClass title=/"第一页/">$frew offset=$this->listPrev$this->_get_vars/" $this->theClass title=/"上一页/">$rew $separator " : "";
}

// showing pages
if ($this->show_pages_number || !isset($this->show_pages_number)) {
for($this->a = $fgp; $this->a <= $egp; $this->a++) {
$this->theNext = ($this->a-1)*$this->limit;
if ($this->theNext != $GLOBALS[$this->offset]) {
$return .= " offset=$this->theNext$this->_get_vars/" $this->theClass> ";
if ($this->number_type == 'alpha') {
$return .= chr(64 + ($this->a));
} else {
$return .= $this->a;
}
$return .= "
";
} else {
if ($this->number_type == 'alpha') {
$return .= chr(64 + ($this->a));
} else {
$return .= "$this->a";
}
$return .= ($this->a < $this->num_pages) ? " $separator " : "";
}
}
$this->theNext = $GLOBALS[$this->offset] + $this->limit;
if (!empty($fwd)) {
$offset_end = ($this->num_pages-1)*$this->limit; //$separator $fwd [$ffwd]
$return .= ($GLOBALS[$this->offset] + $this->limit < $this->total_result) ? "$separator offset=$this->listNext$this->_get_vars/" $this->theClass title=/"下一页/">$fwd offset=$offset_end$this->_get_vars/" $this->theClass title=/"最后一页/">$ffwd" : "";
}
}
}
return $return;
}

// [Function : Showing the Information for the Offset]
function show_info() {

$return .= "共: ".$this->total_result." , ";
$list_from = ($GLOBALS[$this->offset]+1 > $this->total_result) ? $this->total_result : $GLOBALS[$this->offset]+1;
$list_to = ($GLOBALS[$this->offset]+$this->limit >= $this->total_result) ? $this->total_result : $GLOBALS[$this->offset]+$this->limit;
//$return .= 'Showing Results from ' . $list_from . ' - ' . $list_to . '
';
$return .= "显示: ".$list_from ." - ".$list_to;
return $return;
}

/*因为现在的这个编辑器不能正常解释我西边的代码,我就抓了图来完成真个函数。如果您需要请按照下边的输入就可以了*/

php封装分页类+分页实例

分页类的封装如下: page.php
  • C_jian
  • C_jian
  • 2016年10月27日 13:21
  • 2794

php+mysql实现分页:上一页,下一页

mysql里将数据分页显示的语句是:limit  5,1。5表示检索开始位置,1表示显示1页 所以在php中要实现上一页,下一页就要传一个数据page给limit,就可以分页。 可以理解为三个步骤: ...
  • yuanqishaonv
  • yuanqishaonv
  • 2016年09月23日 13:31
  • 9518

PHP开发-分页实现(附效果图)

首先一个分页类,如下(摘自网络)可拷贝直接使用
  • tangcheng_ok
  • tangcheng_ok
  • 2013年12月03日 21:51
  • 7729

PHP Ajax 页面无刷新 翻页

相信学习php的大部分都了解ajax实现网页局部刷新技术。因为互联网的发展需求要求我们必须做到。如果连基本的ajax都不会。用户体验该会是多么的糟糕啊!网站中用到ajax的时候很多。例如:用户留言评论...
  • haohaojian
  • haohaojian
  • 2014年08月29日 23:29
  • 474

php的翻页示例代码(用class封装)

  • RockLee_1227
  • RockLee_1227
  • 2012年02月18日 13:57
  • 1013

Bootstrap结合PHP实现简单的翻页功能

需求分析:我在搭建个人博客的过程中,遇到了这样一个需求: 点击“下一篇”按钮,页面展示出下一篇文章,点击“上一篇”按钮,页面展示上一篇文章。 这个需求很明显是一个翻页功能。前端设计:个人博客的前端...
  • yums467
  • yums467
  • 2016年01月17日 20:44
  • 1594

PHP翻页类

  • btbdylq
  • btbdylq
  • 2011年11月01日 14:06
  • 1435

page翻页php方法

  • 2015年11月05日 15:24
  • 2KB
  • 下载

PHP页面使用jQuery实现不刷新页面翻页功能

  • 2014年09月17日 09:39
  • 3KB
  • 下载

优秀的翻页效果Flash+PHP源代码

  • 2012年12月20日 13:51
  • 3.23MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP翻页的一个类
举报原因:
原因补充:

(最多只允许输入30个字)