发个分页类,顺便招人

gu1dai 2009-05-18 09:58:18
避免大家重复的造轮子,哈哈.

广告,我们公司要招2个PHP,坛子里的兄弟可以直接联系我,提供住宿。薪资>=3K
在江苏昆山花桥国际商务城,上海过来有直达的车子。
要求:
1、PHP基础牢固
2、熟练掌握HTML、JavaScript、CSS,熟悉DOM , 熟练手写html代码
3、熟悉MySQL数据库
4、有高负荷网站开发经验者为佳
5、用过smarty为佳

联系QQ: 253220642
联系电话: 0512-50329677

<?php
/**
* Page navigation class
* bailing
* http://gudai.cnblogs.com/
* 共有记录:147条 每页显示5条 页次:1/15  首页 上一页 下一页 尾页
* 2009
*/
class pageNav {
var $pageLink="{{link}}_{{page}}.html";
var $selectPageLink= "'{{link}}_'+this.value+'.html'";
var $page = null;
var $totalPages = null;

function pageNav( $page , $limit , $total )
{
$this->totalPages = 0;
if($total>0)
$this->totalPages = intval(ceil($total/$limit));

$this->page = min($this->totalPages , $page);
$this->limit = $limit;
$this->total = $total;
}

function getHtml()
{
$html = '';
$total_pages = $this->totalPages;
$prep = max(1,($this->page-1));
$nextp = min($this->totalPages,($this->page+1));
$firstLink = str_replace("{{page}}","1",$this->pageLink);
$lastLink = str_replace("{{page}}",$this->totalPages,$this->pageLink);
$preLink = str_replace("{{page}}",$prep,$this->pageLink);
$nextLink = str_replace("{{page}}",$nextp,$this->pageLink);

if ( $this->page> 1) {
$html .= "\n<a href='".$firstLink."' > 首页</a>";
$html .= "\n<a href='".$preLink."' > 上一页</a>";
} else {
$html .= "\n<span class=\"pagenav\">首页</span>";
$html .= "\n<span class=\"pagenav\">上一页</span>";
}
if ( $this->page < $this->totalPages ) {
$end_page = $total_pages;
$html .= "\n<a href='".$nextLink."' > 下一页</a>";
$html .= "\n<a href='".$lastLink."' > 尾页</a>";
} else {
$html .= "\n<span class=\"pagenav\">下一页 </span>";
$html .= "\n<span class=\"pagenav\">尾页 </span>";
}
$html = "共有记录:".$this->total."条 每页显示".$this->limit."条 页次:".$this->page."/".$this->totalPages . $html ;
return $html;
}

}//end class
?>

$limit = 12;
$baseLink = "/comment/".$id."_{{page}}.html";
$this->tpl->set( "baseLink" , $baseLink );
list( $total , $limitstart , $limit ) = pagerNew( $this->DB , "tab_ly" , $where , $tpl , $limit , $p , $baseLink );


//调用方法,大家能看懂吧。
function pagerNew( $DB , $table , $where , &$tpl , $limit=30 , $p=1 , $baseLink="/index.php" , $total=0 )
{
LoadAPI("pageNav3");
if(!$p)
{
$p = intval($_GET['p']);
if($p<=0)$p=1;
}
//计算开始条数
$limitstart = ($p-1)*$limit;
//统计共有记录数
if(!$total)
{
$q2 = "SELECT count(*) FROM ".$table." $where" ;
$DB->setQuery( $q2 );
$total = $DB->loadResult();
}
if($limitstart>=$total )
{
$limitstart = $total-$total%$limit;
if($total>0)
die("参数错误,无此页码");
}
if( $limitstart<0 )$limitstart=0;
$tpl->set( "baseLink" , $baseLink );
if($total>0)
{
$nav = new pageNav( $p , $limit , $total );
$nav->pageLink = $baseLink;
$pageLinks = $nav->getHtml();
$thispage = max($nav->page,1);
$tpl->set( "pageLinks",$pageLinks);
$tpl->set( "p",$thispage);
$tpl->set( "totalPages",$nav->totalPages);
}
else
{
$tpl->set( "p",1);
$tpl->set( "totalPages",1);
}
$tpl->set( "total",$total);
//echo $limitstart;
return array( $total , $limitstart , $limit );
}
...全文
324 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
jzhpeng1 2009-05-23
  • 打赏
  • 举报
回复
记得给分
jzhpeng1 2009-05-23
  • 打赏
  • 举报
回复
我自已编的翻页两个,跟据自已需要修改吧

<?php
$maxpage=50;
$page=$_GET['page'];
/***************************下面为用函数时的处理**************************************/
function roll()
{
global $page,$maxpage;
$o=$maxpage-4;
if(empty($page) || $page<=6 || $maxpage<=9)
$v=1;
else if(($page<=$maxpage&&$page==$o)||($page<$maxpage&&$page>$o)||$page==$maxpage)
$v=$maxpage-9;
else
$v=$page-5;
for($i=$v;$i<=$v+9;$i++)
{
if($i==$page)
echo "<a href=2.php?page=".$i."><font size='8'>".$i."</font></a> ";
else
echo "<a href=2.php?page=".$i.">".$i."</a> ";
if($i==$maxpage)
break;
}
}
roll();
?>
gu1dai 2009-05-21
  • 打赏
  • 举报
回复
好,结贴。
gu1dai 2009-05-20
  • 打赏
  • 举报
回复
参数,一个参数 {{page}}

/comment/33_{page}.html
qintao1203 2009-05-20
  • 打赏
  • 举报
回复
UP~
lei291315164 2009-05-18
  • 打赏
  • 举报
回复
哪个兄弟去php 图片格式转换的那个帖子里面回一下,我自己已经解决了,现在要把分给出去!
lei291315164 2009-05-18
  • 打赏
  • 举报
回复
up
早发就好了,之前自己也封装了一个
BernardSun 2009-05-18
  • 打赏
  • 举报
回复
学习下
bookmoth 2009-05-18
  • 打赏
  • 举报
回复
mark
zhenglm 2009-05-18
  • 打赏
  • 举报
回复
up
xugan666 2009-05-18
  • 打赏
  • 举报
回复
先顶一个
莱登堡 2009-05-18
  • 打赏
  • 举报
回复
up~
应该网 2009-05-18
  • 打赏
  • 举报
回复
不错,友情支持。
乐游 之 神话 2009-05-18
  • 打赏
  • 举报
回复
学了
whc0104 2009-05-18
  • 打赏
  • 举报
回复
不错,很简单!
TR@SOE 2009-05-18
  • 打赏
  • 举报
回复
没有看懂对页面上显示的诸如: $link_$nextp这样的点击怎么处理参数的问题。
li36669957 2009-05-18
  • 打赏
  • 举报
回复
学习
内容概要:本文围绕基于Basisformer模型的时间序列锂离子电池SOC(State of Charge,荷电状态)预测展开研究,利用PyTorch框架实现深度学习模型的构建与训练。通过将历史充放电数据作为输入,Basisformer能够有效捕捉电池状态的动态变化特征,提升SOC预测精度。文中详细介绍了模型结构设计、数据预处理流程、训练策略及实验结果分析,并与传统方法进行对比,验证了该方法在复杂工况下的优越性与鲁棒性。该研究不仅展示了Basisformer在时序建模中的潜力,也为电池管理系统提供了高精度的状态估计解决方案。; 适合人群:具备一定Python编程基础和深度学习理论知识,熟悉PyTorch框架,从事电池管理系统、新能源汽车或智能预测方向研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①应用于电动汽车、储能系统等领域的电池SOC高精度实时估算;②为电池健康管理(BMS)提供可靠的状态输入;③推动深度学习在时间序列预测中的实际落地,提升现有预测模型的泛化能力与稳定性; 阅读建议:建议读者结合标题为【锂电池SOC估计】【PyTorch】基于Basisformer时间序列锂离子电池SOC预测研究(python代码实现)的资源,重点研读所提供的Python代码,深入理解数据处理方式与模型网络结构的设计思路,尝试调整超参数以观察对预测性能的影响,从而全面掌握Basisformer在时序建模中的优势、适用边界及工程化实现路径。

21,890

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧