DISCUZ 分页代码

 更新时间:2007年01月02日 00:00:00   作者:  

复制代码 代码如下:
<?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发送post请求的三种方法

    php发送post请求的三种方法

    这篇文章主要介绍了php发送post请求的三种方法,分别使用curl、file_get_content、fsocket来实现post提交数据,需要的朋友可以参考下
    2014-02-02
  • thinkphp模板输出技巧汇总

    thinkphp模板输出技巧汇总

    这篇文章主要介绍了thinkphp模板输出技巧,实例汇总了变量输出、系统变量、运算符等常用是输出技巧,非常具有实用价值,需要的朋友可以参考下
    2014-11-11
  • Thinkphp 框架扩展之驱动扩展实例分析

    Thinkphp 框架扩展之驱动扩展实例分析

    这篇文章主要介绍了Thinkphp 框架扩展之驱动扩展,结合实例形式分析了Thinkphp 框架驱动扩展相关原理、实现方法及操作注意事项,需要的朋友可以参考下
    2020-04-04
  • PHP设计模式之中介者模式(Mediator Pattern)入门与应用案例详解

    PHP设计模式之中介者模式(Mediator Pattern)入门与应用案例详解

    这篇文章主要介绍了PHP设计模式之中介者模式(Mediator Pattern),结合实例形式详细分析了PHP中介者模式的基本概念、原理、应用案例与相关操作注意事项,需要的朋友可以参考下
    2019-12-12
  • php实现常用文件上传类的示例

    php实现常用文件上传类的示例

    下面小编就为大家带来一篇php实现常用文件上传类的示例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • mantis安装、配置和使用中的问题小结

    mantis安装、配置和使用中的问题小结

    这篇文章主要介绍了开源PHP缺陷管理平台mantis安装、配置和使用中的问题小结,mantis是一个PHP的开源缺陷管理平台,需要的朋友可以参考下
    2014-07-07
  • PHP生成静态页

    PHP生成静态页

    PHP生成静态页...
    2006-11-11
  • 纯PHP生成的一个树叶图片画图例子

    纯PHP生成的一个树叶图片画图例子

    这篇文章主要介绍了纯PHP生成的一个树叶图片画图例子,希望可以带给使用PHP进行图像编程的朋友一些帮助。
    2014-04-04
  • 淘宝ip地址查询类分享(利用淘宝ip库)

    淘宝ip地址查询类分享(利用淘宝ip库)

    需要显示评论者的地域属性,这个特点可以通过记录会员IP的地理信息来实现,下面提供一个淘宝IP地址查询类,简化相关的信息查询,大家参考使用吧
    2014-01-01
  • PHP中Session引起的脚本阻塞问题解决办法

    PHP中Session引起的脚本阻塞问题解决办法

    这个问题很多做php开发朋友应该都有遇到过,一个启用了session_start 页面,由于执行时间过长。导致通一个用户访问,另外一个很简单的启用session_start页面一直阻塞着。 直到第一个页面执行完了。第二个页面才可以读取。这个就是,我们常说的session阻塞机制。
    2014-04-04

最新评论