一个典型的PHP分页实例代码分享


Posted in PHP onJuly 28, 2011
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>php make page list</title> 
<style type="text/CSS"> 
<!-- 
.page a:link { 
color: #0000FF; 
text-decoration: none; 
} 
.page a:visited { 
text-decoration: none; 
color: #0000FF; 
} 
.page a:hover { 
text-decoration: none; 
color: #0000FF; 
} 
.page a:active { 
text-decoration: none; 
color: #0000FF; 
} 
.page{color:#0000FF;} 
--> 
</style> 
</head> 
<body> 
<table width="530" height="103" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"> 
<tr> 
<th width="30" height="38" bgcolor="#E3E3E3" scope="col">ID</th> 
<th width="500" bgcolor="#E3E3E3" scope="col">文章标题</th> 
</tr> 
<?php 
/* 
* Created on 2010-4-17 
* 
* Order by Kove Wong 
*/ 
$link=MySQL_connect('localhost','root','haoxiazai1987'); 
mysql_select_db('pagelist'); 
mysql_query('set names gbk'); $Page_size=10; 
$result=mysql_query('select * from v_char'); 
$count = mysql_num_rows($result); 
$page_count = ceil($count/$Page_size); 
$init=1; 
$page_len=7; 
$max_p=$page_count; 
$pages=$page_count; 
//判断当前页码 
if(empty($_GET['page'])||$_GET['page']<0){ 
$page=1; 
}else { 
$page=$_GET['page']; 
} 
$offset=$Page_size*($page-1); 
$sql="select * from v_char limit $offset,$Page_size"; 
$result=mysql_query($sql,$link); 
while ($row=mysql_fetch_array($result)) { 
?> 
<tr> 
<td bgcolor="#E0EEE0" height="25px"><div align="center"> 
<?php echo $row['id']?> 
</div></td> 
<td bgcolor="#E0EEE"><div align="center"> 
<?php echo $row['name']?> 
</div></td> 
</tr> 
<?php 
} 
$page_len = ($page_len%2)?$page_len:$pagelen+1;//页码个数 
$pageoffset = ($page_len-1)/2;//页码个数左右偏移量 
$key='<div class="page">'; 
$key.="<span>$page/$pages</span> "; //第几页,共几页 
if($page!=1){ 
$key.="<a href=\"".$_SERVER['PHP_SELF']."?page=1\">第一页</a> "; //第一页 
$key.="<a href=\"".$_SERVER['PHP_SELF']."?page=".($page-1)."\">上一页</a>"; //上一页 
}else { 
$key.="第一页 ";//第一页 
$key.="上一页"; //上一页 
} 
if($pages>$page_len){ 
//如果当前页小于等于左偏移 
if($page<=$pageoffset){ 
$init=1; 
$max_p = $page_len; 
}else{//如果当前页大于左偏移 
//如果当前页码右偏移超出最大分页数 
if($page+$pageoffset>=$pages+1){ 
$init = $pages-$page_len+1; 
}else{ 
//左右偏移都存在时的计算 
$init = $page-$pageoffset; 
$max_p = $page+$pageoffset; 
} 
} 
} 
for($i=$init;$i<=$max_p;$i++){ 
if($i==$page){ 
$key.=' <span>'.$i.'</span>'; 
} else { 
$key.=" <a href=\"".$_SERVER['PHP_SELF']."?page=".$i."\">".$i."</a>"; 
} 
} 
if($page!=$pages){ 
$key.=" <a href=\"".$_SERVER['PHP_SELF']."?page=".($page+1)."\">下一页</a> ";//下一页 
$key.="<a href=\"".$_SERVER['PHP_SELF']."?page={$pages}\">最后一页</a>"; //最后一页 
}else { 
$key.="下一页 ";//下一页 
$key.="最后一页"; //最后一页 
} 
$key.='</div>'; 
?> 
<tr> 
<td colspan="2" bgcolor="#E0EEE0"><div align="center"><?php echo $key?></div></td> 
</tr> 
</table> 
</body> 
</html>
PHP 相关文章推荐
推荐个功能齐全的发送PHP邮件类
Jan 03 PHP
PHP5与MySQL数据库操作常用代码 收集
Mar 21 PHP
php中的观察者模式
Mar 24 PHP
php设计模式 Strategy(策略模式)
Jun 26 PHP
php守护进程 加linux命令nohup实现任务每秒执行一次
Jul 04 PHP
php读取富文本的时p标签会出现红线是怎么回事
May 13 PHP
PHP的fsockopen、pfsockopen函数被主机商禁用的解决办法
Jul 08 PHP
PHP实现通过get方式识别用户发送邮件的方法
Jul 16 PHP
PHP实现小偷程序实例
Oct 31 PHP
Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法
May 28 PHP
如何让PHP编码更加好看利于阅读
May 12 PHP
PHP数组实际占用内存大小原理解析
Dec 11 PHP
新手学习PHP的一些基础知识分享
Jul 27 #PHP
php XPath对XML文件查找及修改实现代码
Jul 27 #PHP
简单的php写入数据库类代码分享
Jul 26 #PHP
php模拟socket一次连接,多次发送数据的实现代码
Jul 26 #PHP
PHP里的中文变量说明
Jul 23 #PHP
PHP FOR MYSQL 代码生成助手(根据Mysql里的字段自动生成类文件的)
Jul 23 #PHP
php文档更新介绍
Jul 22 #PHP
You might like
基于PHP输出缓存(output_buffering)的深入理解
2013/06/13 PHP
Yii基于数组和对象的Model查询技巧实例详解
2015/12/28 PHP
php面向对象重点知识分享
2019/09/27 PHP
jQuery阻止冒泡和HTML默认操作
2010/11/17 Javascript
高效率JavaScript编写技巧整理
2013/08/23 Javascript
jQuery 快速结束当前正在执行的动画
2013/11/20 Javascript
B/S模式项目中常用的javascript汇总
2013/12/17 Javascript
JS中判断null、undefined与NaN的方法
2014/03/24 Javascript
jquery+css3实现网页背景花瓣随机飘落特效
2015/08/17 Javascript
javascript原生ajax写法分享
2016/04/10 Javascript
js实现的简练高效拖拽功能示例
2016/12/21 Javascript
使用layui 渲染table数据表格的实例代码
2018/08/19 Javascript
在vue中安装使用vux的教程详解
2018/09/16 Javascript
微信小程序实现收货地址左滑删除
2020/11/18 Javascript
Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)
2020/08/28 Javascript
Vue 禁用浏览器的前进后退操作
2020/09/04 Javascript
python结合API实现即时天气信息
2016/01/19 Python
python实现人脸识别代码
2017/11/08 Python
python 字典操作提取key,value的方法
2019/06/26 Python
python实现FTP循环上传文件
2020/03/20 Python
Django nginx配置实现过程详解
2020/09/10 Python
将HTML5 Canvas的内容保存为图片借助toDataURL实现
2013/05/20 HTML / CSS
Waterford英国官方网站:世界上最受欢迎的优质水晶品牌
2019/08/17 全球购物
消防安全宣传口号
2014/06/10 职场文书
入党积极分子学习党的纲领思想汇报
2014/09/13 职场文书
承诺函范文
2015/01/21 职场文书
七一建党节慰问信
2015/02/14 职场文书
监理中标通知书
2015/04/16 职场文书
财务会计个人原因辞职信
2019/06/21 职场文书
使用nginx动态转换图片大小生成缩略图
2021/03/31 Servers
MySQL性能压力基准测试工具sysbench的使用简介
2021/04/21 MySQL
微软PC Health Check电脑健康状况检查应用下载(Win11配置检测工具)
2021/06/26 数码科技
ajax请求前端跨域问题原因及解决方案
2021/10/16 Javascript
使用CSS设置滚动条样式
2022/01/18 HTML / CSS
Z-Order加速Hudi大规模数据集方案分析
2022/03/31 Servers
Android studio 简单计算器的编写
2022/05/20 Java/Android