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 cookis创建实现代码
Mar 16 PHP
PHP 第二节 数据类型之字符串类型
Apr 28 PHP
php语言流程控制中的主动与被动
Nov 05 PHP
使用Apache的htaccess防止图片被盗链的解决方法
Apr 27 PHP
国产PHP开发框架myqee新手快速入门教程
Jul 14 PHP
php中return的用法实例分析
Feb 28 PHP
利用PHP命令行模式采集股票趋势信息
Aug 09 PHP
PHP实现表单提交时去除斜杠的方法
Dec 26 PHP
php防止sql注入的方法详解
Feb 20 PHP
PHP用正则匹配form表单中所有元素的类型和属性值实例代码
Feb 28 PHP
PHP实现的微信公众号扫码模拟登录功能示例
May 30 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
Mar 27 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
Zend Framework基本页面布局分析
2016/03/19 PHP
thinkPHP简单实现多个子查询语句的方法
2016/12/05 PHP
PHP设计模式之建造者模式定义与用法简单示例
2018/08/13 PHP
PHP getID3类的使用方法学习笔记【附getID3源码下载】
2019/10/18 PHP
一个js封装的不错的选项卡效果代码
2008/02/15 Javascript
javascript window.confirm确认 取消对话框实现代码小结
2012/10/21 Javascript
JS获取select-option-text_value的方法
2013/12/26 Javascript
基于jQuery滑动杆实现购买日期选择效果
2015/09/15 Javascript
javascript事件委托的用法及其好处简析
2016/04/04 Javascript
BootStrap 图片样式、辅助类样式和CSS组件的实例详解
2017/01/20 Javascript
利用js实现前后台传送Json的示例代码
2018/03/29 Javascript
vue 组件使用中的一些细节点
2018/04/25 Javascript
JS数组去重常用方法实例小结【4种方法】
2018/05/28 Javascript
详解在React.js中使用PureComponent的重要性和使用方式
2018/07/10 Javascript
脚手架vue-cli工程webpack的基本用法详解
2018/09/29 Javascript
angularjs1.X 重构controller 的方法小结
2019/08/15 Javascript
vue中echarts图表大小适应窗口大小且不需要刷新案例
2020/07/19 Javascript
Python应用03 使用PyQT制作视频播放器实例
2016/12/07 Python
Python实现获取照片拍摄日期并重命名的方法
2017/09/30 Python
python opencv检测目标颜色的实例讲解
2018/04/02 Python
Python简单计算文件MD5值的方法示例
2018/04/11 Python
Win10下python3.5和python2.7环境变量配置教程
2018/09/18 Python
PyCharm在新窗口打开项目的方法
2019/01/17 Python
python求质数列表的例子
2019/11/24 Python
Linux下升级安装python3.8并配置pip及yum的教程
2020/01/02 Python
Python实现RabbitMQ6种消息模型的示例代码
2020/03/30 Python
2021年的Python 时间轴和即将推出的功能详解
2020/07/27 Python
CSS3实现大小不一的粒子旋转加载动画
2016/04/21 HTML / CSS
分公司经理岗位职责
2013/11/11 职场文书
运动会通讯稿150字
2014/02/15 职场文书
合同意向书范本
2014/07/30 职场文书
群教个人对照检查材料
2014/08/20 职场文书
优秀党务工作者先进事迹材料
2014/12/25 职场文书
收银员岗位职责
2015/02/03 职场文书
如何利用python和DOS获取wifi密码
2021/03/31 Python
cypress测试本地web应用
2022/06/01 Javascript