Welcome

首页 / 网页编程 / PHP / DISCUZ 分页代码

复制代码 代码如下:<?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;    
}    
?>