求这种分页的写法首页 上一页1 2 3 4 5 6 7下一页 尾页,用PHP代码写拜托啦。关键语法就可以谢谢啦

如题所述

真巧,前段时间刚好写了一个这个格式的分页类
第一个方法是返回数组格式的数据,可以方便的在模板上添加自己喜欢的样式
第二个方法是直接返回的html代码,可以直接输出

<?php
header('Content-type:text/html; Charset=utf-8');
/**
* @author xuyonglin<woaixuyonglin1@163.com>
*/
class PageHelper{

/**
* createPage 生成分页跳转链接
* @param
* $page 当前页
* $rowCount 总条目数
* $pagesize 每页显示最大条数
* $params 页数后面的参数
* $front 前面显示几个页码
* $end 后面显示几个页码
*/
function createPage($page,$rowCount,$pagesize,$pager,$params,$front=5,$end=5) {
$count_page = ceil($rowCount/$pagesize);
if($page > $count_page){
$page = $count_page;
}
$page1 = $page;
$page2 = $page;

for ($i = 0; $i < $end+1; $i++) {
if ($page1 > $count_page) {
break;
}
$rs1[] = $page1;
$page1++;

}
for ($i = 0; $i < $front+1; $i++) {
$page2--;
if ($page2 == 0) {
break;
}
$rs2[] = $page2;
}
//$rs[] = '首页';
//$rs[] = '上一页';
@sort($rs2);
if($rs2){
foreach($rs2 as $value){
$rs[] = $value;
}
}
if($rs1){
foreach($rs1 as $value){
$rs[] = $value;
}
}
//$rs[] = '下一页';
//$rs[] = '尾页';
$re_pages = array(
'firstPage'=>'1',
'lastPage'=>$count_page,
'middles'=>$rs,
'currentPage'=>$page,
'countPage'=>$count_page
);

return $re_pages;
}
/**
* 分页类
* 描述:用于数据分页显示链接
* @param int rowCount 表示数据总数量
* @param int pagesize 每页显示的数量
* @param sting $pager
* @param params 表示页码的超链中除了page参数之外的其它参数
* @return string 表示分页的字符串
*/
public function showPage($page,$rowCount,$pagesize,$pager,$params){
//TODO: 数据分页显示
$count_page = ceil($rowCount/$pagesize);
if($page > $count_page){
$page = $count_page;
}
$page1 = $page;
$page2 = $page;
/*循环出页数*/
for ($i = 0; $i < 6; $i++) {
if ($page1 > $count_page) {
break;
}
if ($page1 == $page) {
$rs1[] = $page1;
$page1++;
}else{
$rs1[] = '<a href="'.$pager.'?page='.$page1.$params.'">'.$page1.'</a>';
$page1++;
}

}
for ($i = 0; $i < 5; $i++) {
if ($page2 > $count_page) {
break;
}
$page2--;
if ($page2 == 0) {
break;
}
$rs2[] = '<a href="'.$pager.'?page='.$page2.$params.'">'.$page2.'</a>';
}
/*判断是否是第一页*/
if ($page == '1') {
$rs[] = '首页';
$rs[] = '上一页';
}else{
$rs[] = "<a href=$pager?page=1 $params>首页</a>";
$rs[] = '<a href="'.$pager.'?page='.($page-1).$params.'">上一页</a>';
}
@sort($rs2);
if($rs2){
foreach($rs2 as $value){
$rs[] = $value;
}
}

if($rs1){
foreach($rs1 as $value){
$rs[] = $value;
}
}
/*判断是否是最后一页*/
if ($page == $count_page) {
$rs[] = '下一页';
$rs[] = '尾页';
}else{
$rs[] = '<a href="'.$pager.'?page='.($page+1).$params.'">下一页</a>';
$rs[] = "<a href=$pager?page=$count_page $params>尾页</a>";
}

foreach($rs as $value){
$str .= $value.' ';
}
return $str;

}
}

//以下为示例
$ss = new PageHelper();
echo '<pre>';
//var_dump($ss->createPage(3,10000,20,'sss.php','ss',15,15));
var_dump($ss->showPage(35,10000,20,'sss.php','&type=1'));

?>

你把这段代码复制了,然后粘贴到PHP文件里面运行一下就可以了
最后一行代码 里面的几个参数分别是
当前页数,数据总条数,每页显示多少条,需要跳转的页面,页数后面需要加的其它参数
温馨提示:内容为网友见解,仅供参考
无其他回答

求这种分页的写法首页 上一页1 2 3 4 5 6 7下一页 尾页,用PHP代码写...
rs2[] = $page2;} \/\/$rs[] = '首页';\/\/$rs[] = '上一页';sort($rs2);if($rs2){ foreach($rs2 as $value){ rs[] = $value;} } if($rs1){ foreach($rs1 as $value){ rs[] = $value;} } \/\/$rs[] = '下一页';\/\/$rs[] = '尾页';re_pages = array('f...

PHP,在html中怎样实现分页代码:首页、下一页、上一页、尾页???
if ($pageval==1){ echo "下一页";}else{ if ($pageval*$pagesize>=$rows){ echo "上一页";}else{ echo "上一页 "."下一页";} } } echo "";sqli="select * from tb_info limit $page,$pagesize";que=mysql_query($sqli);while($row=mysql_fetch_array($que)){ e...

thinkphp分页问题,想实现把上一页下一页那些字都隐藏掉,用两个div或图...
还有个方法,不用定制分页函数,分页函数出来的是一串html代码,是吧,你在页面中写入CSS,就可以把分页的样式给改变,thinkphp的分页可以控制输出项,你只输出上一页和下一页就行。不知道这样你懂了没,就是自己写个css把thibkphp分页函数的css覆盖掉,这样分页的样式就变成你要的了 ...

thinkphp分页时 怎么取得 上一页下一页的传递变量 就是我想不用原来的...
goods = new \\Model\\GoodsModel();\/\/分页处理 tatal = $goods->count();\/\/获得总记录数 per = 5;\/\/每页显示5条数据 page = new Page($tatal,$per);\/\/实例化分页类对象 page -> setConfig('header','共%TOTAL_ROW%条记录 第%NOW_PAGE%页\/共%TOTAL_PAGE%页');page -> setConfig('...

...php数字分页在smarty中使用,例(上一页 1 2 3 4 5 下一页),必有重...
分页程序一定要自己写 我以前也不会 后来看了书 大概明白一个思路了 要确定的东西有 1. 需要的页数 2.每一页要展现几条记录 3.当前页是第几页 当前页面与前后页面的关系 要用到的有一些数学符号 比如% ,\/ ,+ 自己多想 然后在看看相关资料 很简单的 没问题 ...

asp.net 分页代码 首页 上一页 1 2 3 4 5 >> …… 30 下一页 尾页_百 ...
var maxspace = 4;var prevnum = currentpage-currentposition;var nextnum = currentpage+currentposition;if(prevnum<1) prevnum = 1;if(nextnum>pagecount) nextnum = pagecount;pagestr += (currentpage==1)?'< 前页':'< 前页';if(prevnum-breakspace>maxspace){ for(i=1;i<=brea...

在HTML中用PHP制作首页,上一页,下一页,页尾等效果,简单的,初学着,谢 ...
echo '上一页 ';} if($page < $totalPage){\/\/不在最后一页 echo '下一页 ';} ?> <a href="pagesort.php?page=<?php echo $totalPage;?>">尾页

求一段php分页代码,就像网上用于图书的分页,请教各位高手
prepg=$page-1; \/\/上一页 nextpg=($page==$lastpg ? 0 : $page+1); \/\/下一页 begincount=($page-1)*$rows;\/\/如果只有一页则跳出函数:if($lastpg<1) return false;\/\/开始分页导航条代码:pagenav=" 首页 ";if($prepg)pagenav.=" 上一页 ";else pagenav.=" 上一页 ";if...

用PHP如何实现分页并能够实现上一页,下一页,跳转到()页的功能?
echo "上一页 ";} if ($page < $pages){ echo "下一页 ";echo "尾页 ";} \/\/===\/\/ \/\/ 翻页显示 二 \/\/===\/\/ echo " | 共有".$pages."页(".$page."\/".$pages.")";for ($i=1;$i< $page;$i++){echo "[...

首页 上一页 下一页 尾页 转到第 “口 ”页 确定 共6页,求php代码关键...
prepage=$this->PageNum() - 1;Previous = ($this->PageNum() >= 2) ? " Url($this->LinkAry)."&page=".$prepage."\\">上一页 " : "上一页 ";return $Previous;} \/\/定位下一页 function NextPage() { nextpage = $this->PageNum() + 1;Next = ($this->PageNum() <=...

相似回答