前端之家收集整理的这篇文章主要介绍了
ajax实现分页,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
ajax.js代码:
var http_request=false;
function send_request(url)
{
http_request=false;
//开始初始化XMLHttp对象
if(window.XMLHttpRequest){//MOILLA浏览器
http_request=new XMLHttpRequest();
if(http_request.overrideMimeType){
http_request.overrideMimeType("text/xml");
}
}
else if(window.ActiveXObject){//IE 浏览器
try{
http_request=new ActiveXObject("Msxml2.XMLHttp");
}catch(e){
try{
http_request=new ActiveXObject("Microsoft.XMLHttp");
}catch(e){}
}
}if(!http_request){
window.alert("创建XMLHttp对象失败");
return false;
}
http_request.onreadystatechange=processrequest;
//确定发送请求方式,URL,及是否同步执行下段代码
http_request.open("GET",url,true);
http_request.send(null);
}
//处理返回信息函数
function processrequest(){
if(http_request.readyState==4){
if(http_request.status==200){
document.getElementById(reobj).innerHTML=http_request.responseText;
}else{
alert("您所请求的页面不正常");
}
}
}
function dopage(obj,url){
document.getElementById(obj).innerHTML="正在读取数据.....";
send_request(url);
reobj=obj;
}
myajax.PHP代码:
<?PHP
header("Content-type:text/html;charset=gb2312");
?>
<html>
<head>
<title>ajax分页</title>
<script src="ajax.js"></script>
<style>
.d{font-size:13px}
table{font-size:14px}
a{ text-decoration:none}
</style>
</head>
<body>
<div id="result" class="d">
<?PHP
$page=isset($_GET["page"])?intval($_GET["page"]):1;
$num=3; //每页显示3条数据
$link=MysqL_connect("localhost","root","8821") or die("数据库连接失败".MysqL_error());
MysqL_select_db("page") or die("数据库选择失败".MysqL_error());
MysqL_query("set names 'gb2312'");
$result=MysqL_query("select * from student");
$total=MysqL_num_rows($result);//查询所有数据
$url="myajax.PHP"; //获取本页url
//页码计算
$pagenum=ceil($total/$num); //获得总页数,也是最后一页
$page=min($pagenum,$page); //获得首页
$prepg=$page-1;//上一页
$nextpg=($page==$pagenum?0:$page+1);//下一页
$offset=($page-1)*$num;
//开始分页导航代码
$pagenav="显示第<b>".($total?($offset+1):0)."<b>-<b>".min($offset+3,$total)."<b>条记录,共".$total."条记录$nbsp;";
//如果只有一页则跳出函数
if($pagenum<=1) return false;
$pagenav.="<a href=javascript:dopage('result','$url?page=1');>首页</a>--";
if($prepg)$pagenav.="<a href=javascript:dopage('result','$url?page=$prepg');>前页--</a>";else $pagenav.="前页--";
if($nextpg)$pagenav.="<a href=javascript:dopage('result','$url?page=$nextpg');>后页--</a>";else $pagenav.="后页--";
$pagenav.="<a href=javascript:dopage('result','$url?page=$pagenum');>尾页</a>";
$pagenav.="</select>共".$pagenum."页";
if($page>$pagenum){ //假如传入的页面参数大于总页数 则现实错误信息
echo "can not found the page".$page;
exit;
}
$info=MysqL_query("select * from student limit $offset,$num");
echo "<table border=3>";
while($it=MysqL_fetch_array($info)){
echo "<tr>";
echo "<td>".$it["id"]."</td>";
echo "<td>".$it["name"]."</td>";
echo "<td>".$it["age"]."</td>";
echo "<td>".$it["email"]."</td>";
echo "</tr>";
}
echo "</table>";
echo "<br>";
echo $pagenav;
?>
</div>
</body>
</html>
原文链接:https://www.f2er.com/ajax/166645.html