ajax实现分页

前端之家收集整理的这篇文章主要介绍了ajax实现分页前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
  1. ajax.js代码:
  2. var http_request=false;
  3. function send_request(url)
  4. {
  5. http_request=false;
  6. //开始初始化XMLHttp对象
  7. if(window.XMLHttpRequest){//MOILLA浏览器
  8. http_request=new XMLHttpRequest();
  9. if(http_request.overrideMimeType){
  10. http_request.overrideMimeType("text/xml");
  11. }
  12. }
  13. else if(window.ActiveXObject){//IE 浏览器
  14. try{
  15. http_request=new ActiveXObject("Msxml2.XMLHttp");
  16. }catch(e){
  17. try{
  18. http_request=new ActiveXObject("Microsoft.XMLHttp");
  19. }catch(e){}
  20. }
  21. }if(!http_request){
  22. window.alert("创建XMLHttp对象失败");
  23. return false;
  24. }
  25. http_request.onreadystatechange=processrequest;
  26. //确定发送请求方式,URL,及是否同步执行下段代码
  27. http_request.open("GET",url,true);
  28. http_request.send(null);
  29. }
  30. //处理返回信息函数
  31. function processrequest(){
  32. if(http_request.readyState==4){
  33. if(http_request.status==200){
  34. document.getElementById(reobj).innerHTML=http_request.responseText;
  35. }else{
  36. alert("您所请求的页面不正常");
  37. }
  38. }
  39. }
  40. function dopage(obj,url){
  41. document.getElementById(obj).innerHTML="正在读取数据.....";
  42. send_request(url);
  43. reobj=obj;
  44. }
  45. myajax.PHP代码
  46. <?PHP
  47. header("Content-type:text/html;charset=gb2312");
  48. ?>
  49. <html>
  50. <head>
  51. <title>ajax分页</title>
  52. <script src="ajax.js"></script>
  53. <style>
  54. .d{font-size:13px}
  55. table{font-size:14px}
  56. a{ text-decoration:none}
  57. </style>
  58. </head>
  59. <body>
  60. <div id="result" class="d">
  61. <?PHP
  62. $page=isset($_GET["page"])?intval($_GET["page"]):1;
  63. $num=3; //每页显示3条数据
  64. $link=MysqL_connect("localhost","root","8821") or die("数据库连接失败".MysqL_error());
  65. MysqL_select_db("page") or die("数据库选择失败".MysqL_error());
  66. MysqL_query("set names 'gb2312'");
  67. $result=MysqL_query("select * from student");
  68. $total=MysqL_num_rows($result);//查询所有数据
  69. $url="myajax.PHP"; //获取本页url
  70. //页码计算
  71. $pagenum=ceil($total/$num); //获得总页数,也是最后一页
  72. $page=min($pagenum,$page); //获得首页
  73. $prepg=$page-1;//上一页
  74. $nextpg=($page==$pagenum?0:$page+1);//下一页
  75. $offset=($page-1)*$num;
  76. //开始分页导航代码
  77. $pagenav="显示第<b>".($total?($offset+1):0)."<b>-<b>".min($offset+3,$total)."<b>条记录,共".$total."条记录$nbsp;";
  78. //如果只有一页则跳出函数
  79. if($pagenum<=1) return false;
  80. $pagenav.="<a href=javascript:dopage('result','$url?page=1');>首页</a>--";
  81. if($prepg)$pagenav.="<a href=javascript:dopage('result','$url?page=$prepg');>前页--</a>";else $pagenav.="前页--";
  82. if($nextpg)$pagenav.="<a href=javascript:dopage('result','$url?page=$nextpg');>后页--</a>";else $pagenav.="后页--";
  83. $pagenav.="<a href=javascript:dopage('result','$url?page=$pagenum');>尾页</a>";
  84. $pagenav.="</select>共".$pagenum."页";
  85. if($page>$pagenum){ //假如传入的页面参数大于总页数 则现实错误信息
  86. echo "can not found the page".$page;
  87. exit;
  88. }
  89. $info=MysqL_query("select * from student limit $offset,$num");
  90. echo "<table border=3>";
  91. while($it=MysqL_fetch_array($info)){
  92. echo "<tr>";
  93. echo "<td>".$it["id"]."</td>";
  94. echo "<td>".$it["name"]."</td>";
  95. echo "<td>".$it["age"]."</td>";
  96. echo "<td>".$it["email"]."</td>";
  97. echo "</tr>";
  98. }
  99. echo "</table>";
  100. echo "<br>";
  101. echo $pagenav;
  102. ?>
  103. </div>
  104. </body>
  105. </html>

猜你在找的Ajax相关文章