简洁实用的分页类【支持跳转*页】

分页显示效果为:
分页显示效果

class pager
{
    /**
     * 不需要传条件分页  
     * 后添加前台翻页函数
     * @param int    $pagecount 多少页
     * @param int    $page   当前第几页
     * @param string $table_style
     * @param string $font_style
     * @param int    $result_num       总条数
     * @param int    $page_size         该页显示的数量
     */
    function output($pagecount, $page, $table_style, $font_style, $result_num, $page_size){                           
        @$action        = $_SERVER['REDIRECT_URL'];
        $pagetable     = "";
        $pagecountlist = "";
        $temp          = "";                                       
        if(isset($_SERVER['QUERY_STRING']) && !empty($_SERVER['QUERY_STRING'])){
        $query = explode("&",$_SERVER['QUERY_STRING']);
            while(list($index, $value) = each($query)){
                $a = explode("=",$value);
                if(strcmp(strtolower($a[0]),"page")!=0){
                    $temp .= $a[0]."=".$a[1]."&";
                }
            }
        }else{
            $temp = "";
        }      
        $pagetable .=  "<div class=\"page\" align=\"center\">\n";
        if($pagecount > 1)
        {
                $pagetable .="共有: " . $result_num . " 条记录 ";   
                if($page<=1){
                    $pagetable .="<a class=\"fy\" href=" . $action . "?" . $temp . "page=1>首页</a>&nbsp;";
                    $pagetable .= "&nbsp;<a href='javascript:;' onclick=alert('已经是第一页') class=\"fy\">上一页</a>&nbsp;";
                }
                else{
                    $pagetable .= "<a class=\"fy\" href=" . $action . "?" . $temp . "page=1>首页</a>&nbsp;";
                    $pagetable .= "&nbsp;<a class=\"fy\" href=" . $action . "?" . $temp . "page=" . ($page-1) . ">上一页</a>&nbsp;";
                }
                $start = (ceil($page/10)-1)*10+1;       
                $end   = ceil($page/10)*10;
                if($start <= 0) $start = 1;
                if($end   >= $pagecount) $end = $pagecount;
                for($i=$start;$i<=$end;$i++)
                {
                    if($page == $i)
                        $pagecountlist .= "&nbsp;<span class='dy'>".$i."</span>&nbsp;";
                    else
                        $pagecountlist .= "&nbsp;<a class=\"fy\" href=" . $action . "?" . $temp . "page=" . $i . ">".$i."</a>&nbsp;";
                }   
        }
        $pagetable .= $pagecountlist."";
    if($pagecount > 1)
        {
            if($page >= $pagecount){
                $pagetable .= "&nbsp;<a href='javascript:;' onclick=alert('已经是最后一页')  class=\"fy\">下一页</a>&nbsp;";
                $pagetable .= "&nbsp;<a class=\"fy\" href=" . $action . "?" . $temp . "page=" . $pagecount . ">尾页</a>&nbsp;";
                $pagetable .="<input type='text'  style='width:30px' /> 页 &nbsp;<input type='button'  class=\"get_pagenum\" value='跳转'/>&nbsp;";
                $pagetable .="<script>
                $('.get_pagenum').click(function(){
                        var page_val=$(this).prev('input').val();
                        if(Number(page_val==0)){
                            page_val=1;
                        }
                        if(!isNaN(page_val)){
                            if(page_val>= ".$pagecount."){
                                var url_get=window.location.href;
                                if(url_get.indexOf('page') > 0){
                                    window.location.href=url_get.replace(/page=\d{1,}/, 'page='+".$pagecount.");
                                }else{
                                    if(url_get.indexOf('?') < 0){
                                        window.location.href=url_get+'?page='+".$pagecount.";
                                    }else{
                                        window.location.href=url_get+'&page='+".$pagecount.";
                                    }
                                }
                            }else{
                                var url_get=window.location.href;
                                if(url_get.indexOf('page') > 0){
                                    window.location.href=url_get.replace(/page=\d{1,}/, 'page='+page_val);
                                }else{
                                    if(url_get.indexOf('?') < 0){
                                        window.location.href=url_get+'?page='+page_val;
                                    }else{
                                        window.location.href=url_get+'&page='+page_val;
                                    }
                                }
                            }
                        }else{
                            alert('请输入正确数值');
                        }
                    }
                )
                </script>";
            }else{
                $pagetable .= "&nbsp;<a class=\"fy\" href=" . $action . "?" . $temp . "page=" . ($page+1) . ">下一页</a>&nbsp;";
                $pagetable .= "&nbsp;<a class=\"fy\" href=" . $action . "?" . $temp . "page=" . $pagecount . ">尾页</a>&nbsp;";
                $pagetable .="<input type='text'  style='width:30px' /> 页 &nbsp;<input type='button'  class=\"get_pagenum\" value='跳转'/>&nbsp;";
                $pagetable .="<script>
                $('.get_pagenum').click(function(){
                        var page_val=$(this).prev('input').val();
                        if(Number(page_val==0)){
                            page_val=1;
                        }
                        if(!isNaN(page_val)){
                            if(page_val>= ".$pagecount."){
                                var url_get=window.location.href;
                                if(url_get.indexOf('page') > 0){
                                    window.location.href=url_get.replace(/page=\d{1,}/, 'page='+".$pagecount.");
                                }else{
                                    if(url_get.indexOf('?') < 0){
                                        window.location.href=url_get+'?page='+".$pagecount.";
                                    }else{
                                        window.location.href=url_get+'&page='+".$pagecount.";
                                    }
                                }
                            }else{
                                var url_get=window.location.href;
                                if(url_get.indexOf('page') > 0){
                                    window.location.href=url_get.replace(/page=\d{1,}/, 'page='+page_val);
                                }else{
                                    if(url_get.indexOf('?') < 0){
                                        window.location.href=url_get+'?page='+page_val;
                                    }else{
                                        window.location.href=url_get+'&page='+page_val;
                                    }
                                }
                            }
                        }else{
                            alert('请输入正确数值');
                        }

                    }
                )
                </script>";
            }
        }
        $pagetable .=  "</div>";
        return $pagetable;
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值