当前位置: 首页 > 图文教程 > 网络编程 > PHP > DISCUZ 分页代码

PHP
PHP6 安装方法
PHP中的ob_start用法详解
学习php遇到的主要问题及解决办法
PHP知识:正则表达式中特殊字符的说明
PHP系列教程:《PHP设计模式介绍》 导言
PHP系列教程:设计模式介绍Ⅰ编程惯用法
PHP系列教程:设计模式介绍Ⅱ值对象模式
PHP系列教程:设计模式介绍Ⅲ工厂模式
PHP系列教程:设计模式介绍Ⅳ单件模式
PHP系列教程:设计模式介绍Ⅴ注册模式
PHP系列教程:设计模式介绍Ⅵ伪对象模式
PHP系列教程:设计模式介绍Ⅶ策略模式
PHP系列教程:设计模式介绍Ⅷ迭代器模式
PHP系列教程:设计模式介绍Ⅸ观测模式
PHP系列教程:设计模式介绍Ⅸ规范模式
PHP教程:自动适应范围的页码分页程序
SQL函数:CONCAT_WS和LENGTH
PHP:招PHP高级工程师的面试题
美化/etc/my.cnf文件
PHP注释查看器

PHP 中的 DISCUZ 分页代码


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

复制代码 代码如下:
<?php
/*
[Discuz!] (C)2001-2006 Comsenz Inc.
This is NOT a freeware, use is subject to license terms
$RCSfile: global.func.php,v $
$Revision: 1.83.2.7 $
$Date: 2006/10/27 08:08:18 $
*/
function multi($num, $perpage, $curpage, $mpurl, $maxpages = 0) {
$multipage = '';
$mpurl .= strpos($mpurl, '?') ? '&' : '?';
if($num > $perpage) {
$page = 10;
$offset = 2;
$realpages = @ceil($num / $perpage);
$pages = $maxpages && $maxpages < $realpages ? $maxpages : $realpages;
if($page > $pages) {
$from = 1;
$to = $pages;
} else {
$from = $curpage - $offset;
$to = $from + $page - 1;
if($from < 1) {
$to = $curpage + 1 - $from;
$from = 1;
if($to - $from < $page) {
$to = $page;
}
} elseif($to > $pages) {
$from = $pages - $page + 1;
$to = $pages;
}
}
$multipage = ($curpage - $offset > 1 && $pages > $page ? '<a class="p_redirect" href="'.$mpurl.'page=1">|?</a>' : '').
($curpage > 1 ? '<a class="p_redirect" href="'.$mpurl.'page='.($curpage - 1).'">??</a>' : '');
for($i = $from; $i <= $to; $i++) {
$multipage .= $i == $curpage ? '<a class="p_curpage">'.$i.'</a>' :
'<a href="'.$mpurl.'page='.$i.'" class="p_num">'.$i.'</a>';
}
$multipage .= ($curpage < $pages ? '<a class="p_redirect" href="'.$mpurl.'page='.($curpage + 1).'">??</a>' : '').
($to < $pages ? '<a class="p_redirect" href="'.$mpurl.'page='.$pages.'">?|</a>' : '').
($curpage == $maxpages ? '<a class="p_redirect" href="misc.php?action=maxpages&pages='.$maxpages.'">??</a>' : '').
($pages > $page ? '<a class="p_pages" style="padding: 0px"><input class="p_input" type="text" name="custompage" onKeyDown="if(event.keyCode==13) {window.location=\''.$mpurl.'page=\'+this.value; return false;}"></a>' : '');
$multipage = $multipage ? '<div class="p_bar"><a class="p_total"> '.$num.' </a><a class="p_pages"> '.$curpage.'/'.$realpages.' </a>'.$multipage.'</div>' : '';
}
return $multipage;
}
?>