|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
小试一下身手,大概是没问题了,那么交给你个任务,做个留言本吧,这和HELLO WORLD有一比啊!^_^,同是新手面临的第一道关。 后果图:
记得之前看到过一个页码体例的分页后果,页码数多了折行持续显示一向到60多页,呵呵!有点影响雅观!
因而写了一个,可以主动顺应局限的页码分页法式
也就是说,页码格局以下
<< < 1 2 3 4 5 6 7 > >>
<< < 6 7 8 9 10 11 12 > >>
下划线为以后页,如许就能够固定显示一个邻近的页码,防止太长影响雅观
代码加了正文,次要是老手看看,呵呵 ,写这个函数,没有思索体现布局分别成绩,高手就不要究查了! 复制内容到剪贴板 代码:
<?php
function page($page,$total,$phpfile,$pagesize=10,$pagelen=7){
$pagecode = '';//界说变量,寄存分页生成的HTML
$page = intval($page);//防止非数字页码
$total = intval($total);//包管总纪录数值类型准确
if(!$total) return array();//总纪录数为零前往空数组
$pages = ceil($total/$pagesize);//盘算总分页
//处置页码正当性
if($page<1) $page = 1;
if($page>$pages) $page = $pages;
//盘算查询偏移量
$offset = $pagesize*($page-1);
//页码局限盘算
$init = 1;//肇端页码数
$max = $pages;//停止页码数
$pagelen = ($pagelen%2)?$pagelen:$pagelen+1;//页码个数
$pageoffset = ($pagelen-1)/2;//页码个数摆布偏移量
//生成html
$pagecode='<div class="page">';
$pagecode.="<span>$page/$pages</span>";//第几页,共几页
//假如是第一页,则不显示第一页和上一页的毗连
if($page!=1){
$pagecode.="<a href=\"{$phpfile}?page=1\"><<</a>";//第一页
$pagecode.="<a href=\"{$phpfile}?page=".($page-1)."\"><</a>";//上一页
}
//分页数大于页码个数时可以偏移
if($pages>$pagelen){
//假如以后页小于等于左偏移
if($page<=$pageoffset){
$init=1;
$max = $pagelen;
}else{//假如以后页大于左偏移
//假如以后页码右偏移超越最大分页数
if($page+$pageoffset>=$pages+1){
$init = $pages-$pagelen+1;
}else{
//摆布偏移都存在时的盘算
$init = $page-$pageoffset;
$max = $page+$pageoffset;
}
}
}
//生成html
for($i=$init;$i<=$max;$i++){
if($i==$page){
$pagecode.='<span>'.$i.'</span>';
} else {
$pagecode.="<a href=\"{$phpfile}?page={$i}\">$i</a>";
}
}
if($page!=$pages){
$pagecode.="<a href=\"{$phpfile}?page=".($page+1)."\">></a>";//下一页
$pagecode.="<a href=\"{$phpfile}?page={$pages}\">>></a>";//最初一页
}
$pagecode.='</div>';
return array('pagecode'=>$pagecode,'sqllimit'=>' limit '.$offset.','.$pagesize);
}
?>函数参数:
$page 以后$_GET取得的页码
$total 总纪录数
$phpfile 页码毗连文件名
$pagesize 不必注释了吧 呵呵
$pagelen 最多显示几个页码 注重(奇数),对称嘛!
函数前往一个数组:
pagecode 索引对应的内容是 生成的HTML 代码
sqllimit 索引对应的是sql limit 后缀
利用办法: 复制内容到剪贴板 代码:
<?php
$phpfile = 'index.php';
$page= isset($_GET['page'])?$_GET['page']:1;
$db = new Mysql();
$counts = $db->counts('select `id` from `test`');
$sql='select `id`,`title` from `test`';
$getpageinfo = page($page,$counts,$phpfile);
$sql.=$getpageinfo['sqllimit'];
$data = $db->getRows($sql);
?>
<?php
echo $getpageinfo['pagecode'];//显示分页的html代码
?>补助CSS 复制内容到剪贴板 代码:
<style type="text/css">
body{font-family:Tahoma;}
.page{padding:2px;font-weight:bolder;font-size:12px;}
.page a{border:1px solid #ccc;padding:0 5px 0 5px;margin:2px;text-decoration:none;color:#333;}
.page span{padding:0 5px 0 5px;margin:2px;background:#09f;color:#fff;border:1px solid #09c;}
</style> <font face=Verdana>以下是HTML网页殊效代码,点击运转按钮可检查后果:
以下是法式代码<style type="text/css"> .page { width:auto; height:auto } .page ul { list-style:none; paddingL0; margin:0 } .page li { width:auto; height:20px; line-height:20px; float:left; margin-right:2px; color:#000; display:block; font-size:12px } .page li a { width:auto; height:20px; line-height:20px; border:1px solid #CCC; float:left; margin-right:2px; color:#000; TEXT-DECORATION: none; display:block; padding:0 5px; font-size:12px } .page li a:hover { background:blue; color:white; TEXT-DECORATION: none; border:1px solid blue } </style> <div class="page"> <ul> <li><a href="#">1</a></li> <li><a href="#">2</a></li> <li><a href="#">3</a></li> <li><a href="#">4</a></li> <li><a href="#">5</a></li> <li><a href="#">6</a></li> <li><a href="#">7</a></li> <li><a href="#">8</a></li> <li><a href="#">9</a></li> <li><a href="#">10</a></li> <li><a href="#">11</a></li> <li><a href="#">12</a></li> <li><a href="#">13</a></li> <li><a href="#">14</a></li> <li><a href="#">15</a></li> </ul> </div></font></CODE></div> <a href="http://js.alixixi.com/">接待会见阿里西西网页殊效代码站,js.alixixi.com</a>
[Ctrl+A 全体选择 提醒:你可先修正局部代码,再按运转]理解动态语言的概念,运做机制,熟悉PHP语法 |
|