DISCUZ 分页代码


Posted in PHP onJanuary 02, 2007
<?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;     
}     
?>   
PHP 相关文章推荐
解析php函数method_exists()与is_callable()的区别
Jun 21 PHP
测试PHP连接MYSQL成功与否的代码
Aug 16 PHP
php实现在线生成条形码示例分享(条形码生成器)
Dec 30 PHP
php定义数组和使用示例(php数组的定义方法)
Mar 29 PHP
详解PHP实现异步调用的4种方法
Mar 14 PHP
Zend Framework教程之Zend_Config_Ini用法分析
Mar 23 PHP
PHP模板引擎Smarty内建函数详解
Apr 11 PHP
ThinkPHP中调用PHPExcel的实现代码
Apr 08 PHP
浅谈Laravel中的一个后期静态绑定
Aug 11 PHP
详解提高使用Java反射的效率方法
Apr 29 PHP
PHP7创建COOKIE和销毁COOKIE的实例方法
Feb 03 PHP
php自动加载代码实例详解
Feb 26 PHP
帖几个PHP的无限分类实现想法~
Jan 02 #PHP
PHP+MYSQL开发工具及资源收藏
Jan 02 #PHP
分享PHP入门的学习方法
Jan 02 #PHP
php中常用编辑器推荐
Jan 02 #PHP
PHP中的日期处理方法集锦
Jan 02 #PHP
PHP语法速查表
Jan 02 #PHP
require(),include(),require_once()和include_once()的异同
Jan 02 #PHP
You might like
PHP的FTP学习(一)[转自奥索]
2006/10/09 PHP
使用无限生命期Session的方法
2006/10/09 PHP
IIS6的PHP最佳配置方法
2007/03/19 PHP
浅析HTTP消息头网页缓存控制以及header常用指令介绍
2013/06/28 PHP
php使用fsockopen函数发送post,get请求获取网页内容的方法
2014/11/15 PHP
php中foreach结合curl实现多线程的方法分析
2016/09/22 PHP
PHP使用zlib扩展实现GZIP压缩输出的方法详解
2018/04/09 PHP
5 cool javascript apps
2007/03/24 Javascript
Prototype 学习 工具函数学习($w,$F方法)
2009/07/12 Javascript
jQuery学习笔记之jQuery选择器的使用
2010/12/22 Javascript
JS Pro-深入面向对象的程序设计之继承的详解
2013/05/07 Javascript
JS检测输入字符是否包含非法字符的示例代码
2014/02/11 Javascript
javascript数字时钟示例分享
2014/04/23 Javascript
firefox浏览器用jquery.uploadify插件上传时报HTTP 302错误
2015/03/01 Javascript
JS+JSP通过img标签调用实现静态页面访问次数统计的方法
2015/12/14 Javascript
最全的JavaScript开发工具列表 总有一款适合你
2017/06/29 Javascript
JavaScript模块模式实例详解
2017/10/25 Javascript
vue debug 二种方法
2018/09/16 Javascript
IE8中jQuery.load()加载页面不显示的原因
2018/11/15 jQuery
微信小程序绑定手机号获取验证码功能
2019/10/22 Javascript
[02:42]DOTA2英雄基础教程 杰奇洛
2013/12/23 DOTA
[00:56]跨越时空加入战场 全新祈求者身心“失落奇艺侍祭”展示
2019/07/20 DOTA
详解Python 模拟实现生产者消费者模式的实例
2017/08/10 Python
Python使用Pickle库实现读写序列操作示例
2018/06/15 Python
python 用opencv调用训练好的模型进行识别的方法
2018/12/07 Python
Python3实现取图片中特定的像素替换指定的颜色示例
2019/01/24 Python
python 计算平均平方误差(MSE)的实例
2019/06/29 Python
Python秒算24点实现及原理详解
2019/07/29 Python
深入浅析Python 命令行模块 Click
2020/03/11 Python
Python 发送邮件方法总结
2020/08/10 Python
通俗讲解python 装饰器
2020/09/07 Python
python批量合成bilibili的m4s缓存文件为MP4格式 ver2.5
2020/12/01 Python
AmazeUI 图标的示例代码
2020/08/13 HTML / CSS
希腊品牌鞋类销售网站:epapoutsia.gr
2020/03/18 全球购物
信用卡逾期证明示例
2014/09/13 职场文书
2015年大学团支部工作总结
2015/05/13 职场文书