分页系统
来源:互联网 发布:powert片头制作软件 编辑:程序博客网 时间:2024/06/08 15:51
先写一个php文件
<?php
/*
几个关键的变量 当前页 总页数 每页大小
*/
include "../include/dbConn.php";
//定义当前页
if(isset($_GET['np'])){
$nowpage=$_GET['np'];
}else{
$nowpage=1;
}
//得到总的记录数
$rs=mysql_query("select count(*) from area");
$rownum=mysql_result($rs,0);
//总页数=上取整(总记录数/每页大小)
$pages=ceil($rownum/$F_PAGESIZE);
?>
<!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=utf-8" />
<title>ajax+js+dom+php+mysql实现仿百度、goole的超强分页</title>
<script language="javascript" type="text/javascript" src="ajaxUtil.js"></script>
<style>
#tab{
margin:auto auto;
background-color:#C9C;
border-collapse:collapse;
}
#content{
height:500px;
width:700px;
background-color:#FC6;
border:dashed #06C 1px;
}
#pagenum{
text-align:center;
height:20px;
width:700px;
background-color:#CCC;
border:dashed #06C 1px;
}
</style>
<script>
//定义全局
var nowpage=1;
//定义开始页
var startpage=1;
//定义结束页
var endpage=<?php echo $pages;?>;
//定义一个总页数
var page=<?php echo $pages;?>;
/* 显示页码部分开始*/
//初始化页码
//alert("$$$$");
function initpages(){
/*
1.定义当前页 解决在javascript中使用php中定义的变量
3.定义结束页(最终页)
2.定义开始页
*/
//当总页数大于11的时候,设定起始页码和结束页码
if(page>11){
//设定起始页码
if(nowpage-10>0){
//如果当前页-10>0则设置起始页=当前页-10,否则不设置startpage=1
startpage=nowpage-10;
}
//设置结束页
if(nowpage+9<page){
//如果说当前页+9<总页数,则设定结束页为当前页数+9 否则设定结束页=总页数
endpage=nowpage+9;
}else{
//结束页=总页数
endpage=page;
}
}
var pagenumstr="";
//判断什么时候显示上一页
if(nowpage!=1){
pagenumstr+=" <a href='javascript:getPageDate("+(nowpage-1)+")'>上一页</a>";
}
//for循环读出页码
for(var i=startpage;i<=endpage;i++){
//判断是否为当前页。如果为当前页,让该页码加粗
if(nowpage==i){
//如果是当前页则加粗显示
pagenumstr+=" <b>"+i+"</b>";
}else{
pagenumstr+=" <a href='javascript:getPageDate("+i+")'>"+i+"</a>";
}
}
//判断显示下一页
if(nowpage<page){
pagenumstr+=" <a href='javascript:getPageDate("+(nowpage+1)+")'> 下一页</a>";
}
$$("pagenum").innerHTML=pagenumstr;
}
/* 显示页码部分结束*/
/* 显示页面正文内容开始*/
function getPageDate(np){
var url="paging-server.php";
var params="np="+np;
//进行ajax请求
get(url,params,processPageDate);
}
/* 显示页面正文结束*/
/* 显示页码表格的隔行变色的开始*/
function processPageDate(xhr){
//将json的格式转化为字符串
var obj=eval("("+xhr.responseText+")");
//将当前页重新赋值,注意服务器端返回的字符串
nowpage=parseInt(obj.np);
initpages();
//获取查询结果
var rows=obj.pageDatas;
var pagestr="<table>";
pagestr+="<tr><th>编号</th><th>名称</th><th>区号</th></tr>";
for(var i=0;i<rows.length;i++){
pagestr+="<tr><td>"+rows[i].id+"</td><td>"+rows[i].name+"</td><td>"+rows[i].code+"</td></tr>";
}
pagestr+="</table>";
//将表格显示到div中
$$("content").innerHTML=pagestr;
}
/* 显示页码表格的隔行变色的结束*/
/*自己*/
</script>
</head>
<body onload="getPageDate(1)">
<table width="" border="0" id="tab">
<caption>表格分页</caption>
<tr>
<td>
<div id="content">
</div>
</td>
</tr>
<tr>
<td colspan="4">
<div id="pagenum">
</div>
</td>
</tr>
</table>
</body>
</html>
然后再写一个文件辅助
<?php
header("Content-Type:text/html;charset=UTF-8");
include "../include/dbConn.php";
//接收客户端传递过来的数据
$np=$_GET['np'];
//定义sql
$sql="select id,name,code from area limit ".
($np-1)*$F_PAGESIZE.",".$F_PAGESIZE;
$rs=mysql_query($sql);
$arr2=array();
//遍历读取每一行数据
while($rows=mysql_fetch_assoc($rs)){
$arr[]=$rows;
}
$arr2=array("np"=>$np,"pageDatas"=>
$arr);
//将数组转换成json格式的字符串
echo json_encode($arr2);
?>
要确定与数据库连接,还有文件路径要弄对
- 分页系统
- 系统分页
- asp分页系统
- asp分页系统
- 牛腩系统-分页
- Unity3d分页系统
- ssm分页系统
- 系统列表分页的实现
- 分页系统的地址变换
- 分页式存储管理系统
- 分页系统中的设计问题
- 新闻分页---新闻发布系统
- 电子相册系统(九)分页
- 请求分页系统工作机制
- 【福分系统】EasyUI真假分页
- 网上书店系统 书籍分页功能
- 优化分页系统的一种方法
- 请求分页式系统地址转换
- 链接
- Daily report 2012年3月6日
- 打开android命令窗口设置端口映射
- 提供嵌入式GCC开发支持服务
- 字符串反转
- 分页系统
- Windows Sysinternals Live
- DWZ帮助文档,明天可以用到的
- Android 中LayoutInflater的使用!
- 小型单词统计程序
- RAID简介
- 锁屏或按Home键后继续播放音乐
- ajax+js+dom+json+php+mysql实现漂亮的表格各行变色与google分页效果
- FreeBSD 自动补齐