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;    
}    
?>

(0)

相关推荐

  • Linux+Nginx+MySQL下配置论坛程序Discuz的基本教程

    Crossday Discuz! Board(简称 Discuz!)是北京康盛新创科技有限责任公司推出的一套通用的社区论坛软件系统.自2001年6月面世以来,Discuz!已拥有14年以上的应用历史和200多万网站用户案例,是全球成熟度最高.覆盖率最大的论坛软件系统之一.目前最新版本Discuz! X3.2正式版于2015年6月9日发布,首次引入应用中心的开发模式.2010年8月23日,康盛创想与腾讯达成收购协议,成为腾讯的全资子公司. Crossday Discuz! Board(以下简称 D

  • DISCUZ论坛的UBB编辑器(增加灵活调用,支持ASP UBB解析)打包下载

    复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  <html>  <head>  <meta http-equiv="Content-Type" content="text/html; charset=gbk">  <title>Discuz编辑器</title>  <m

  • DISCUZ 论坛管理员密码忘记的解决方法

    DISCUZ论坛管理员密码忘记了怎么办? 今天,一个朋友在QQ上问我,"如果DISCUZ论坛管理员密码忘记了 从MYSQL 哪里找啊?", 他用的是HostMonster的虚拟主机. yun~~~, 自己也没用过DISCUZ,只好说,"这个不是很清楚,可以直接去改一下数据库的记录试一下, 但是不知道DISCUZ是否对密码加密了 " 后来他登录cPanel,用phpMyAdmin进去查看, 又晕了,一堆表不知道是哪个,在google一下查到了"Discuz

  • 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

  • angular.js分页代码的实例

    对于大多数web应用来说显示项目列表是一种很常见的任务.通常情况下,我们的数据会比较多,无法很好地显示在单个页面中.在这种情况下,我们需要把数据以页的方式来展示,同时带有转到上一页和下一页的功能.现在在学习angular,使用angularjs 分页,基于 directive 实现,样式使用的 bootstrap,直接在 html代码中加入 标签即可调用. 先来看下效果图 实例代码 app.directive('pagePagination', function(){ return { rest

  • Angular.js与Bootstrap相结合实现表格分页代码

    先给大家简单介绍angular.js和bootstrap基本概念. AngularJS 是一个 JavaScript 框架.它可通过 <script> 标签添加到 HTML 页面. AngularJS 通过 指令 扩展了 HTML,且通过 表达式 绑定数据到 HTML. Bootstrap,来自 Twitter,是目前最受欢迎的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷. 最近一直学习Angular.js,在学习过程

  • asp.net MVC分页代码分享

    本文实例为大家分享了MVC分页代码,供大家参考,具体内容如下 using System.Collections.Generic; using System.Collections.Specialized; using System.Linq; using System.Web; using System.Text; using System.Web.Mvc; using System.Web.Routing; using System.Data.Objects.DataClasses; name

  • php分页原理 分页代码 分页类制作教程

    分页显示是一种非常常见的浏览和显示大量数据的方法,属于web编程中最常处理的事件之一.对于web编程的老手来说,编写这种代码实在是和呼吸一样自然,但是对于初学者来说,常常对这个问题摸不着头绪,因此特地撰写此文对这个问题进行详细的讲解. 一.分页原理: 所谓分页显示,也就是将数据库中的结果集人为的分成一段一段的来显示,这里需要两个初始的参数: 每页多少条记录($PageSize)?        当前是第几页($CurrentPageID)? 现在只要再给我一个结果集,我就可以显示某段特定的结果出

  • 分页代码

    分页代码: <%''本程序文件名为:Pages.asp%> <%''包含ADO常量表文件adovbs.inc,可从"\Program Files\Common Files\System\ADO"目录下拷贝%> <!--#Include File="adovbs.inc"--> <%''*建立数据库连接,这里是Oracle8.05数据库 Set conn=Server.CreateObject("ADODB.Conn

  • JSP通用高大上分页代码(超管用)

    先给大家展示下分页效果,如果亲们还很满意请参考以下代码. 在超链接中要保留参数 当使用多条件查询后,然后在点击第2 页时,这个第2页超链接没有条件了,所以会丢失条件,所以我们需要在页面上的所有链接都要保留条件! 我们要把条件以一个字符串的形式保存到PageBean的url中!这个任务交给Servlet! pagebean package cn.itcast.cstm.domain; import java.util.List; public class PageBean<T> { privat

  • js脚本分页代码分享(7种样式)

    本文跟大家分享了7种JS脚本分页样式,相信总有一款是适合你的哦 抓紧先上图给大家挑选一下------------------运行效果------------------- 其实小编挺喜欢最后一款的,亲,你呐? 为大家再分享实现JS脚本分页的代码,直接复制代码,运行即可,抓紧试试吧 <html> <head> <title>7种JS脚本分页代码</title> <style> body {font-size: 12px;} /* Pages Mai

  • 分享PHP函数实现数字与文字分页代码

    这篇文章主要是用PHP函数实现数字与文字分页,具体实现步骤就不罗嗦了,直接上代码 /** * * @param $_sql * @param $_size */ function _page($_sql,$_size) { //将里面的所有变量取出来,外部可以访问 global $_page,$_pagesize,$_pagenum,$_pageabsolute,$_num; if (isset($_GET['page'])) { $_page = $_GET['page']; if (empt

  • JQuery 构建客户/服务分离的链接模型中Table分页代码效率初探

    如果你所在公司的开发环境或者项目的开发环境处于单一语言的开发环境之中,框架不适用,因为框架的使用范围之一就是针对一个项目中存在多个语言开发的业务模块,而新项目都需要这些模块的功能,按照以前的习惯,肯定是重新开发,至少也是将其他的语言开发的业务功能变成webservice接口供新代码调用,在这种情况下,本文讨论的框架就可以派上用场并且还能在客户端消除语言差异,只使用纯javascript和html静态代码进行开发. 当然即使在单一的语言环境下,仍然可以使用该模型进行开发,不过开发人员就无法享受到各

随机推荐