您好,欢迎访问一九零五行业门户网

photoshop cs5 官方中文正式原版下载 php 分页类 扩展代码

原来发表过一个脱离数据库的分页类,最近使用的时候发现有些时候搜索的东西过于大的时候,采用url传递参数的方式,可能会有一定的影响或者叫已知的bug,这次做了一些扩展,同时兼容了以前的模式,使用上面很简单的,只需要多设置一个参数就可以了代码如下:
复制代码 代码如下:
is_post = $is_post;
        $this->pvar = defined('page_bar') ? page_bar : 'myp' ;
        $url = $_server['php_self'].'?'.$_server['query_string'];
        //计算出总页数
        $curpage = $this->getcurpage();
        $temp['sumpage'] = ceil($sum/$pagesize);
        //修改了,页码超出的bug
        if($curpage>$temp['sumpage']) $curpage=$temp['sumpage'];
        $temp['curpage'] = $curpage;
        $temp['nextpage'] = $temp['sumpage'] > $curpage ? ($curpage+1) : $temp['sumpage'];
        $temp['uppage'] = $curpage >1 ? $curpage-1 :1;
        $temp['endpage'] = $temp['sumpage'];
        $this->urlparamstr = $this->_makeurl($url);
        $temp['urlpagestr'] = ($page==) ? $this->_makeurl($url) : $page.$this->urlparamstr;
        $this->sqlmovenumber = $curpage         $temp['sqlmovenumber'] = $this->sqlmovenumber;
        $temp['rowno'] = $sum;
        $this->result = $temp;
        return $this->result;
        //print_r($temp);exit();
    }
    public function getsqlmove()
    {
        return $this->sqlmovenumber;
    }
    public function getfooter()
    {
        $str= 共有 {$this->result['rowno']} 条 result%5b urlpagestr>result['uppage']}';
        if($this->is_post) $str .= ;
        $str .= >上一页 ;
        $str .= 当前 {$this->result['curpage']} 页;
        $str .= 共有 {$this->result['sumpage']} 页;
        $str .= result%5b urlpagestr>result['nextpage']}';
        if($this->is_post) $str .= ;
        $str .= >下一页;
        return $str;
    }
    public function getjumppage()
    {
        if($this->is_post)
        {
            $str = 跳到第 $i\n : $i\n;
}
$str.= 页;
         //输出form表单
        if($this->is_post)
        {
            $str .=;
            $str .=;
            $str .=pvar} value=0>;
            $_post = isset($_post) ? $_post : array();
            foreach($_post as $k=>$v)
            {
                $str .=;
            }
            $str .=;
        }
return $str;
    }
    public function getcurpage()
    {
        return isset($_get[$this->pvar]) ? intval($_get[$this->pvar]) : 1 ;
    }
    //分析出url的参数返回?后的参数,页码为空 包括问号
    private function _makeurl($url)
    {
        $arrayurl=parse_url($url);
        if(isset($arrayurl['query']))
        {
            $q=$arrayurl['query'];
            parse_str($q,$qparam);
            //print_r($qparam);
            if(array_key_exists($this->pvar,$qparam))
            {
                foreach ($qparam as $k=>$v)
                {
                    if($k !=$this->pvar) $temp[$k] = $v;
                }
                $temp[$this->pvar] = ;
                if(function_exists(http_build_query))
                    return '?'.http_build_query($temp);
                else
                    return '?'.sanshi_http_build_query($temp);
            }else {
                return ?{$q}&{$this->pvar}=;
            }
        }else{
            return ?{$this->pvar}=;
        }
    }
}
function sanshi_http_build_query($a,$b='',$c=0)
{
    if (!is_array($a)) return false;
    foreach ((array)$a as $k=>$v)
    {
        if ($c)
            $k=$b.[.$k.];
        elseif (is_int($k))
            $k=$b.$k;
        if (is_array($v)||is_object($v))
        {
            $r[]=http_build_query($v,$k,1);
            continue;
        }
        $r[]=$k.=.urlencode($v);
    }
    return implode(&,$r);
}
/*
//print_r($_server);
$p = new pagination();
$p->set(10,2,'thi.php');
echo $p->getfooter();
echo $p->getjumppage();
*/
?>
以上就介绍了photoshop cs5 官方中文正式原版下载 php 分页类 扩展代码,包括了photoshop cs5 官方中文正式原版下载方面的内容,希望对php教程有兴趣的朋友有所帮助。
其它类似信息

推荐信息