这样的分页效果如何判断呢

ziluopao 发布于 2016/10/31 23:26
阅读 354
收藏 0
PHP

这是一个帝国cms的分页函数,在原来的基础上改了一下,先说需求

无论当前页是不是第一页,首页上一页都显示出来,下面的代码是当 当前页是第一页的时候,首页和上一页这两个标签不出现了,如何判断让其出现呢

想要的实现的效果


      之前的效果


function my_listpage($num,$page,$dolink,$type,$totalpage,$line,$ok,$search="",$add){
	global $fun_r,$public_r;
	if($num<=$line)
	{
		$pager['showpage']='';
		return $pager;
	}
	//文件名
	if(empty($add['dofile']))
	{
		$add['dofile']='index';
	}
	//静态页数
	$repagenum=$add['repagenum'];
	$page_line=$public_r['listpagelistnum'];
	$snum=2;
	//$totalpage=ceil($num/$line);//取得总页数
	$firststr='<li><a title="Total record">&nbsp;<b>'.$num.'</b> </a></li>';
	//上一页
	
	if($page<>1)
	{
		$toppage='<li><a href="'.$dolink.$add['dofile'].$type.'">'.$fun_r['startpage'].'</a></li>';
		$pagepr=$page-1;
		if($pagepr==1)
		{
			$prido=$add['dofile'].$type;
		}
		else
		{
			$prido=$add['dofile'].'_'.$pagepr.$type;
		}
		$prepage='<li><a href="'.$dolink.$prido.'">'.$fun_r['pripage'].'</a></li>';
	}
	//下一页
	if($page!=$totalpage)
	{
		$pagenex=$page+1;
		$nextpagelink=$repagenum&&$repagenum<$pagenex?eReturnRewritePageLink2($add,$pagenex):$dolink.$add['dofile'].'_'.$pagenex.$type;
		$lastpagelink=$repagenum&&$repagenum<$totalpage?eReturnRewritePageLink2($add,$totalpage):$dolink.$add['dofile'].'_'.$totalpage.$type;
		$nextpage='<li><a href="'.$nextpagelink.'">'.$fun_r['nextpage'].'</a></li>';
		$lastpage='<li><a href="'.$lastpagelink.'">'.$fun_r['lastpage'].'</a></li>';
	}
	$starti=$page-$snum<1?1:$page-$snum;
	$no=0;
	for($i=$starti;$i<=$totalpage&&$no<$page_line;$i++)
	{
		$no++;
		if($page==$i)
		{
			$is_1='<li class="thisclass">';
			$is_2="</li>";
		}
		elseif($i==1)
		{
			$is_1='<li><a href="'.$dolink.$add['dofile'].$type.'">';
			$is_2="</a></li>";
		}
		else
		{
			$thispagelink=$repagenum&&$repagenum<$i?eReturnRewritePageLink2($add,$i):$dolink.$add['dofile'].'_'.$i.$type;
			$is_1='<li><a href="'.$thispagelink.'">';
			$is_2="</a></li>";
		}
		$returnstr.= $is_1.$i.$is_2;
	}
	$returnstr=$toppage.$prepage.$returnstr.$nextpage.$lastpage;
	$pager['showpage']=$returnstr;
	return $pager;
}




加载中
0
landcoder
landcoder
第24行那里,修改下判断条件,改成大于等于1试试。
0
ziluopao
ziluopao

引用来自“landcoder”的评论

第24行那里,修改下判断条件,改成大于等于1试试。

这样改成功了一半,到是显示出首页和上一页标签了,但是有一个小问题

此时首页和上一页中也有了herf链接了,要是能取消掉就好了

因为当前页是第一页的时候,此时首页和上一页其实也是当前页,即第一页,所以从逻辑上是不能有链接的。

0
ziluopao
ziluopao
嗯,搞定了,打印出每个变量就好办了,然后就是=0的时候的判断就over了
返回顶部
顶部