复制代码 代码如下: <?php
/** * 功能:分页类 * 作者:phpox * 时间:Sat Jul 14 18:15:02 CST 2007 */
defined('PHPOX') or die(header("HTTP/1.1 403 Not Forbidden"));
class page{ public $infocount; public $pagecount; public $items; public $pageno; public $start; public $next; public $prev; public $maxpages;
public function __construct($infocount,$items,$pageno){ $this->infocount = $infocount; $this->items = $items; $this->pageno = $pageno; $this->pagecount = $this->getpagecount(); $this->justpageno(); $this->start = $this->getstart(); $this->gotoprev(); $this->gotonext(); }
private function justpageno(){ if (emptyempty($this->pageno) || $this->pageno < 1){ $this->pageno = 1; } if ($this->pageno > $this->pagecount){ $this->pageno = $this->pagecount; } }
private function gotonext(){ $next = $this->pageno + 1; if ($next > $this->pagecount){ $this->next = $this->pagecount; }else { $this->next = $next; }
}
private function gotoprev(){ $prev = $this->pageno -1; if ($prev < 1){ $this->prev = 1; }else { $this->prev = $prev; } }
private function getpagecount(){ return ceil($this->infocount / $this->items); }
private function getstart(){ if ($this->pageno <= 1){ return 0; }else { return ($this->pageno - 1) * $this->items; } }
/** * 样式0(php) */ public function showpage($ctlname,$actname,$args = null){ if ($args !== null){ if (is_array($args)){ $str = '&'.encode_url_args($args); } } $out = ''; $out .= "每页显示{$this->items}条信息 "; $out .= "当前页<strong><font color="#FF0000">{$this->pageno}</font>/{$this->pagecount}</strong> "; $out .= "共有{$this->infocount}条信息 "; $out .= "<a href='http://www.jb51.net/article/?ctl={$ctlname}&act={$actname}&p=1$str'>首页</a> "; $out .= "<a href='http://www.jb51.net/article/?ctl={$ctlname}&act={$actname}&p={$this->prev}$str'>上一页</a> "; $out .= "<a href='http://www.jb51.net/article/?ctl={$ctlname}&act={$actname}&p={$this->next}$str'>下一页</a> "; $out .= "<a href='http://www.jb51.net/article/?ctl={$ctlname}&act={$actname}&p={$this->pagecount}$str'>尾页</a> "; $out .= "跳转到:"; $out .= "<select id="page" name="page" onchange="javascript:window.location='?ctl={$ctlname}&act={$actname}$str&p='+this.options[this.selectedIndex].value;">n"; $out .= " <option value="1">请选择</option>n"; for ($i = 1;$i <= $this->pagecount;$i++){ $out .= " <option value="$i">第{$i}页</option>n"; } $out .= "</select>n"; return $out; }
/** * 样式1(html) */ function htmlshowpage($path,$list,$film){ $out = ''; $out .= "每页显示{$this->items}条信息 "; $out .= "当前页<strong><font color="#FF0000">{$this->pageno}</font>/{$this->pagecount}</strong> "; $out .= "共有{$this->infocount}条信息 "; $out .= "<a href='http://www.jb51.net/article/{$path}$list/{$film}_1.html'>首页</a> "; $out .= "<a href='http://www.jb51.net/article/{$path}$list/{$film}_{$this->prev}.html'>上一页</a> "; $out .= "<a href='http://www.jb51.net/article/{$path}$list/{$film}_{$this->next}.html'>下一页</a> "; $out .= "<a href='http://www.jb51.net/article/{$path}$list/{$film}_{$this->pagecount}.html'>尾页</a> "; $out .= "跳转到:"; $out .= "<select id="page" name="page" onchange="javascript:window.location='{$path}html/$list/{$film}_'+this.options[this.selectedIndex].value +'.html'">n"; $out .= " <option value="1">请选择</option>n"; for ($i = 1;$i <= $this->pagecount;$i++){ $out .= " <option value="$i">第{$i}页</option>n"; } $out .= "</select>n"; return $out; }
/** * 样式2(discuz) */ function multi($mpurl,$page = 10) {
$multipage = ''; $mpurl .= strpos($mpurl, '?') !== false ? '&' : '?'; $realpages = 1; if($this->infocount > $this->items) { $offset = 2;
$realpages = @ceil($this->infocount / $this->items); $pages = $this->maxpages && $this->maxpages < $realpages ? $this->maxpages : $realpages;
if($page > $pages) { $from = 1; $to = $pages; } else { $from = $this->pageno - $offset; $to = $from + $page - 1; if($from < 1) { $to = $this->pageno + 1 - $from; $from = 1; if($to - $from < $page) { $to = $page; } } elseif($to > $pages) { $from = $pages - $page + 1; $to = $pages; } }
$multipage = ($this->pageno - $offset > 1 && $pages > $page ? '<a href="'http://www.jb51.net/article/.$mpurl.'page=1">1 ...</a>' : ''). ($this->pageno > 1 ? '<a href="'http://www.jb51.net/article/.$mpurl.'page='.($this->pageno - 1).'"><<</a>' : ''); for($i = $from; $i <= $to; $i++) { $multipage .= $i == $this->pageno ? '<a><strong>'.$i.'</strong></a>' :'<a href="'http://www.jb51.net/article/.$mpurl.'page='.$i.'">'.$i.'</a>'; }
$multipage .= ($this->pageno < $pages ? '<a href="'http://www.jb51.net/article/.$mpurl.'page='.($this->pageno + 1).'">>></a>' : ''). ($to < $pages ? '<a href="'http://www.jb51.net/article/.$mpurl.'page='.$pages.'">... '.$realpages.'</a>' : ''). ($pages > $page ? '<kbd><input type="text" size="3" onkeydown="if(event.keyCode==13) {window.location=''http://www.jb51.net/article/.$mpurl.'page='+this.value; return false;}" /></kbd>' : '');
$multipage = $multipage ? '<div><a> '.$this->infocount.' </a><a> '.$this->pageno.'http://www.jb51.net/'.$pages.' </a>'.$multipage.'</div>' : ''; } return $multipage; }
/** * 样式3(zol) */ public function zol($mpurl) { $mpurl .= strpos($mpurl, '?') !== false ? '&' : '?'; $code = '<div>'; $code .= '<div>第<font>'.$this->pageno.'</font><font>/'.$this->pagecount.'</font>页 每页<font>'.$this->items.'</font> 共<font>'.$this->infocount.'</font>款产品</div>'; $code .= '<table cellpadding="0" cellspacing="3">'; $code .= '<tr>'; if ($this->pageno == $this->prev) { $code .= "<td><a disabled='disabled'><<上一页</a></td>"; } else { $code .= "<td><a href='http://www.jb51.net/article/{$mpurl}page={$this->prev}'><<上一页</a></td>"; } $i = 10 ; $k = 1; if ($this->pageno < 1) { $this->pageno = 1; } if ($this->pageno > $this->pagecount) { $this->pageno = $this->pagecount; } $s = $this->pageno-2; if ($s <= 0) { $s = 1; } $e = $this->pageno+2; if ($e < 5 ) { $e = 5; } if ($e > $this->pagecount) { $e = $this->pagecount; } for ($j=$s;$j<=$e;$j++) { if ($this->pageno == $j) { $code .= '<td bgcolor="#2E6AB1">'.$j.'</td>'; } else { $code .= "<td onMouseOver="this.style.border='1px solid #2062A4'" onMouseOut="this.style.border='1px solid #AACCEE'" style="CURSOR: hand" onClick="javascript:window.location=('{$mpurl}page={$j}')">$j</td>"; } } if ($this->pageno == $this->pagecount) { $code .= "<td><a disabled='disabled' >下一页>></a></td>"; } else { $code .= "<td><a href='http://www.jb51.net/article/{$mpurl}page={$this->next}'>下一页>></a></td>"; } $code .= '</tr>'; $code .= '</table>'; $code .= '</div>'; return $code; } }
(编辑:焦作站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|