共享一个分页类,希望大家喜欢,也希望你能批批。

 1   
 2class page{   
 3/*   
 4实例:   
 5$sql = "select count(*) from t_article";   
 6$db->query($sql);   
 7$db->next_record();   
 8$recordcount = $db->f(0);//记录总数   
 9  
10$ofun->pagearg = "pagenum";//设置分页参数名,默认为page   
11$trunpage = $ofun->show_page($recordcount, 20);//得到分页信息   
12  
13$sql = "select * from t_article order by tdate desc ".$ofun->limit;   
14$db->query($sql);   
15*/   
16  
17var $pagecount; //总页数   
18  
19var $limit = ""; //分页时用到的limit参数   
20  
21var $pagearg = "page"; //分页参数名称   
22/*   
23* 功能:分页函数   
24* 参数 $recordcount 为记录总数   
25* 参数 $pagesize 为每页显示记录数,默认为20   
26*/   
27function show_page($recordcount, $pagesize = 20){   
28$this->pagecount = ceil($recordcount/$pagesize);//总页数   
29//取得页码,默认为1   
30if(isset($_GET[$this->pagearg])){   
31if($_GET[$this->pagearg] <= 0) $page = 1;   
32else $page = $_GET[$this->pagearg];   
33}else {   
34$page = 1;   
35}   
36$str = "";   
37$urlar = $_GET;   
38unset($urlar[$this->pagearg]);   
39if($urlar){   
40foreach($urlar as $key=>$val){   
41if($str == "") $str = "?$key=$val";   
42else $str .= "&$key=$val";   
43}   
44$str .= "&$this->pagearg=";   
45}else{   
46$str = "?$this->pagearg=";   
47}   
48if($page > $this->pagecount) $page = $this->pagecount;   
49  
50$this->limit = "limit ".($page-1)*$pagesize.",".$pagesize;   
51  
52$trunpage = "";   
53if($page == 1){   
54$trunpage .= "«首页 ‹前页 ";   
55}else {   
56$trunpage .= '

<a href="'.$str.'1">«首页</a>

<a href="'.$str.($page-1).'">‹前页</a>

1';   
2}   
3if($page == $this->pagecount){   
4$trunpage .= " 后页› 末页» ";   
5}else {   
6$trunpage .= '

<a href="'.$str.($page+1).'">后页›</a>

<a href="'.$str.$this-&gt;pagecount.'">末页»</a>

1';   
2}   
3return $trunpage;   
4}   
5  
6}   

---------------------------------------------------------------

直言不讳:没有任何创新,比较粗糙、不通用、效率差。
---------------------------------------------------------------

效率比较低。
功能比较弱
---------------------------------------------------------------

封装的不好。可用性不大。
---------------------------------------------------------------

不断改进的朋友,是好样的.直言不违的朋友的话是我们前进的动力
---------------------------------------------------------------

做个动网的分页来分享吧,我会欣然接受的,懒得写,一起研究一下哈~
最好有123456789,这样,你用下拉也是不错的不是不能直接点,你这个是这个形式的:
首页 前页 后页 尾页 页次:1/10页 30个记录/页 转到 1 页 共275个记录
---------------------------------------------------------------

http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=194361
---------------------------------------------------------------

好啊,真是急时啊!
我正好需要一个分页,谢谢了!
---------------------------------------------------------------

一直没用类来处理分页,
关键是每个列表的项目及功能都不一样,分页实现的效果也完全不同,
很难抽象出一个模型.

---------------------------------------------------------------

哈哈哈,精神可佳!不断改进!
---------------------------------------------------------------

能不能更通用些?根据字段数组自动设置表格并应用给定的CSS
---------------------------------------------------------------

“分页类”?
这个名字取得有问题。
分明只是产生“分页导航条”嘛

建议植入简单的模板处理代码。这样外观样式可完全由又模板控制,而避免在方法中输出html标记。也可不必为适用范围广而附加许多控制参数。

---------------------------------------------------------------

我觉得这个分页简单实用,
虽然不太通用,但只要稍为修改一下就可以了的.
什么都要求通用,那效率就不高的.
---------------------------------------------------------------

个人觉得,挺喜欢这个帖的.虽然里面的功能自己都可以实现,但还是研究了这个帖
不少时间.

可能我想的和大家不一样,最近一直在考虑写类的感觉的问题.同样一个功能,实现
的方法不同.因为自己水平还不够,也不敢谈诸如怎么写效率高一点的问题.而且,
在现在的硬件,数据库的水平下,一般的工作,代码只要不要写的太离谱,总不会慢的
让人受不了.

所以,在个人目前的水平下,考虑效率是一件多少有点可笑的事.我把精力放在了代码
的整理上,自己称为----把代码弄的优雅一点.
这么说,好象有点...呵...不过,在下是半路玩PHP的,没有上过专门写程序的课,一段
时间再打回去看自己过去写的代码,觉得好难看,一点都不漂亮,再看看各位高手的代码,
就给一种很优雅的感觉.

写一个类,就算是再简单的,要将代码弄的简洁易读,不是那么容易.所以,仔细研究了
楼主的类,感受挺多,在此,向楼主表示感谢:)
---------------------------------------------------------------

做分页实现的方法很多,但大多都没考虑效率问题,当然是越简单越好了!
---------------------------------------------------------------

用那种只传入页数。每页数。
以前我发现一个类很好,

Published At
Categories with Web编程
Tagged with
comments powered by Disqus