快速业务通道

PHP代码实例:常用的PHP分页类

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-03-16

工作经常会用到的一个分页类..记录一下.

/**
Example: 
 
$page = (isset($this->params[named][page])) ? $this->params[named][page] : 1;
// 导入分页类
App::import(Vendor, page_class);
// 获取公告总数
$total = $this->Bulletin->getBulletinTotal();
$perpage = ITEMPREPAGE;
$offset = $perpage * ($page - 1);
$pagebar = new Pagebar($total, $page, $offset, $perpage);
$pagenav = $pagebar->construct_page_nav($total, $page, SYSTEMURL . /bulletins/index, null, null);
*/
 
perpage = $perpage;
 
$numpages = ceil($numresults / $this->perpage);
if ($numpages == 0)
{
$numpages = 1;
}
 
if ($page < 1)
{
$page = 1;
}
else if ($page > $numpages)
{
$page = $numpages;
}
 
$limitlower = ($page - 1) * $this->perpage;
$limitupper = ($page) * $this->perpage;
 
if ($limitupper > $numresults)
{
$limitupper = $numresults;
if ($limitlower > $numresults)
{
$limitlower = ($numresults - $this->perpage) - 1;
}
}
if ($limitlower < 0)
{
$limitlower = 0;
}
}
 
/**
* Returns the HTML for multi-page navigation
*
* @param	integer	Total number of items found
* @param	integer	Page number being displayed
* @param	string	Base address for links eg: q.php?t=99{&page=4}
* @param	string	Ending portion of address for links
*
* @return	string	Page navigation HTML
*/
function construct_page_nav($results, $pagenumber, $address, $address2 = , $option = array())
{
$perpage = $this->perpage;
 
$show = array();
$curpage = 0;
$pagenav = ;
$firstlink = ;
$prevlink = ;
$lastlink = ;
$nextlink = ;
 
if ($results <= $perpage)
{
$show[pagenav] = false;
return ;
}
 
$show[pagenav] = true;
 
$total = number_format($results);
$totalpages = ceil($results / $perpage);
 
$show[prev] = false;
$show[next] = false;
$show[first] = false;
$show[last] = false;
 
if ($pagenumber > 1)
{
$prevpage = $pagenumber - 1;
$prevnumbers = $this->fetch_start_end_total_array($prevpage, $perpage, $results);
$show[prev] = true;
}
if ($pagenumber < $totalpages)
{
$nextpage = $pagenumber + 1;
$nex

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号