|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
由于是上班时候写的,所以假如全部由部贴出来恐怕对不起公司,所以我把其中的表单跳转删去了。别见怪哦。。。 格式写法是比较标准的了 PHP代码:-------------------------------------------------------------------------------- /********** | +--------------------------------------------------- | CLASS NAME: PageBar | +--------------------------------------------------- | Author: Arvan [E-mail:Arvan@5n9.com QQ:8817776] | Create date: 2003-7-17 | Note: | Do for pagination | +--------------------------------------------------- | Warning: no... | +--------------------------------------------------- **********/ class PageBar { var $total; var $onepage; var $num; var $pagecount; var $total_page; var $offset; var $linkhead; function PageBar($total, $onepage, $form_vars=\\\'\\\') { $pagecount = $_GET[\\\'pagecount\\\']; $this->total = $total; $this->onepage = $onepage; $this->total_page = ceil($total/$onepage); if (empty($pagecount)) { $this->pagecount = 1; $this->offset = 0; } else { $this->pagecount = $pagecount; $this->offset = ($pagecount-1)*$onepage; } if (!empty($form_vars)) { $vars = explode("|", $form_vars); $chk = $vars[0]; $chk_value = $_POST[\\\'$chk\\\']; if (empty($chk_value)) { $formlink = ""; } else { for ($i=0; $i<sizeof($vars); $i++) { $var = $vars[$i]; $value = $_POST[\\\'$var\\\']; $addchar = $vars."=".$value; $addstr = $addstr.$addchar."&"; } $formlink = "&".substr($addstr, 0, sizeof($addstr)-1); } } else { $formlink = ""; } $linkarr = explode("pagecount=", $_SERVER[\\\'QUERY_STRING\\\']); $linkft = $linkarr[0]; if (empty($linkft)) { $this->linkhead = $_SERVER[\\\'PHP_SELF\\\']."?".$formlink; } else { $this->linkhead = $_SERVER[\\\'PHP_SELF\\\']."?".$linkft.$formlink; } } #End function PageBar(); function offset() { return $this->offset; } #End function offset(); function pre_page($char=\\\'\\\') { $linkhead = $this->linkhead; $pagecount = $this->pagecount; if (empty($char)) { $char = "[<]"; } if ($pagecount>1) { $pre_page = $pagecount - 1; return "<a href=/"$linkhead"."pagecount=$pre_page/">$char</a>"; } else { return \\\' \\\'; } } #End function pre_page(); function next_page($char=\\\'\\\') { $linkhead = $this->linkhead; $total_page = $this->total_page; $pagecount = $this->pagecount; if (empty($char)) { $char = "[>]"; } if ($pagecount<$total_page) { $next_page = $pagecount + 1; return "<a href=/"$linkhead"."pagecount=$next_page/">$char</a>"; } else { return \\\' \\\'; } } #End function next_page(); function num_bar($num=\\\'\\\', $color=\\\'\\\', $left=\\\'\\\', $right=\\\'\\\') { $num = (empty($num))?10:$num; $this->num = $num; $mid = floor($num/2); $last = $num - 1; $pagecount = $this->pagecount; $totalpage = $this->total_page; $linkhead = $this->linkhead; $left = (empty($left))?"[":$left; $right = (empty($right))?"]":$right; $color = (empty($color))?"#ff0000":$color; $minpage = (($pagecount-$mid)<1)?1<img src="images/smilies/frown.gif" border="0" alt="">$pagecount-$mid); $maxpage = $minpage + $last; if ($maxpage>$totalpage) { $maxpage = $totalpage; $minpage = $maxpage - $last; $minpage = ($minpage<1)?1:$minpage; } for ($i=$minpage; $i<=$maxpage; $i++) { $char = $left.$i.$right; if ($i==$pagecount) { $char = "<font color=\\\'$color\\\'>$char</font>"; } $linkchar = "<a href=\\\'$linkhead"."pagecount=$i\\\'>".$char."</a>"; $linkbar = $linkbar.$linkchar; } return $linkbar; } #End function num_bar(); function pre_group($char=\\\'\\\') { $pagecount = $this->pagecount; $linkhead = $this->linkhead; $num = $this->num; $mid = floor($num/2); $minpage = (($pagecount-$mid)<1)?1<img src="images/smilies/frown.gif" border="0" alt="">$pagecount-$mid); $char = (empty($char))?"[<<]":$char; $pgpagecount = ($minpage>$num)?$minpage-$mid:1; return "<a href=\\\'$linkhead"."pagecount=$pgpagecount\\\'>".$char."</a>"; } #End function pre_group(); function next_group($char=\\\'\\\') { $pagecount = $this->pagecount; $linkhead = $this->linkhead; $totalpage = $this->total_page; $num = $this->num; $mid = floor($num/2); $last = $num; $minpage = (($pagecount-$mid)<1)?1<img src="images/smilies/frown.gif" border="0" alt="">$pagecount-$mid); $maxpage = $minpage + $last; if ($maxpage>$totalpage) { $maxpage = $totalpage; $minpage = $maxpage - $last; $minpage = ($minpage<1)?1:$minpage; } $char = (empty($char))?"[>>]":$char; $ngpagecount = ($totalpage>$maxpage+$last)?$maxpage + $mid:$totalpage; return "<a href=\\\'$linkhead"."pagecount=$ngpagecount\\\'>".$char."</a>"; } #End function next_group(); function whole_num_bar($num=\\\'\\\', $color=\\\'\\\') { $num_bar = $this->num_bar($num, $color); $pre_group = $this->pre_group(); $pre_page = $this->pre_page(); $next_page = $this->next_page(); $next_group = $this->next_group(); return $pre_group.$pre_page.$num_bar.$next_page.$next_group; } #End function whole_bar(); } #End class PageBar; /***** //example $total = 1000; $onepage = 20; $pb = new PageBar($total, $onepage); $offset = $pb->offset(); $pagebar = $pb->whole_num_bar(); echo $offset."<br>".$pagebar; return: 0 [<<] [1][2][3][4][5][6][7][8][9][10][>][>>] *****/ 返回类别: 教程 上一教程: PHP中实现大图自动缩成小图(及GD库的安装) 下一教程: 大家关心的问题,开发短信程序(java) 您可以阅读与"今天写的分页类......分享"相关的教程: · 我写的一个用PHP+MYSQL轻松实现论坛里的分级+分页显示的例程!(很具体的哦!虽然效率不是最佳,却非... · 测试已经无误,重新发布的修改后的分页类,附点说明 · 关于文本留言本的分页代码 · php+oracle 分页类 · 用ODBC的分页显示 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |