亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

php+ajax實現(xiàn)無刷新數(shù)據(jù)分頁例子

時間:2025-10-03 02:00:28 php語言

php+ajax實現(xiàn)無刷新數(shù)據(jù)分頁例子

  無刷新功能我們用到很多很多的,下面我就來給各位介紹一個實例,就是實現(xiàn)php+ajax實現(xiàn)無刷新數(shù)據(jù)分頁了,例子非常的簡單大家只要按流程來操作就可以了哦.
  index.php 文件代碼如下:
  <?php
  header("Content-type: text/html;charset=GBK");/pic/div>
  ?>
  <html>
  <head>
  <title>ajax分頁演示</title>
  <script language="javascript" src="ajaxpg.js"></script>
  <link rel="stylesheet" type="text/css" href="page.css">
  </head>
  <body>
  <div id="result">
  <?php
  $page=isset($_GET['page'])?intval($_GET['page']):1;  /pic/div>
  $num=3;  /pic/div>
  $db=mysql_connect("localhost","root","123456");  /pic/div>
  mysql_select_db("demo",$db) or die("數(shù)據(jù)庫鏈接錯誤");  /pic/div>
  mysql_query("set names gbk");
  /*
  首先咱們要獲取數(shù)據(jù)庫中到底有多少數(shù)據(jù),才能判斷具體要分多少頁,具體的公式就是
  總數(shù)據(jù)庫除以每頁顯示的條數(shù),有余進一。
  也就是說10/3=3.3333=4 有余數(shù)就要進一。
  */
  $result=mysql_query("select * from brand");
  $total=mysql_num_rows($result); /pic/div>
  $url='test.php';/pic/div>
  /pic/div>
  $pagenum=ceil($total/$num);/pic/div>
  $page=min($pagenum,$page);/pic/div>
  $prepg=$page-1;/pic/div>
  $nextpg=($page==$pagenum ? 0 : $page+1);/pic/div>
  $offset=($page-1)*$num; /pic/div>
  $pagenav="<ul>";
  /pic/div>
  $pagenav.="<li>顯示第 <B>".($total?($offset+1):0)."</B>-<B>".min($offset+10,$total)."</B> 條記錄</li><li>共 $total 條記錄&nbsp;</li>";
  /pic/div>
  if($pagenum<=1) return false;
  $pagenav.="<li> <a href=javascript:dopage('result','$url?page=1');>首頁</a></li> ";
  if($prepg) $pagenav.="<li> <a href=javascript:dopage('result','$url?page=$prepg');>前頁</a></li> "; else $pagenav.=" <li>前頁</li> ";
  if($nextpg) $pagenav.="<li><a href=javascript:dopage('result','$url?page=$nextpg');>后頁</a> </li>"; else $pagenav.=" <li>后頁</li> ";
  $pagenav.="<li> <a href=javascript:dopage('result','$url?page=$pagenum');>尾頁</a></li> ";
  $pagenav.="<li>第 $page 頁</li><li>共 $pagenum 頁</li></ul>";
  /pic/div>
  If($page>$pagenum){
  Echo "Error : Can Not Found The page ".$page;
  Exit;  /pic/div>
  }
  ?></div><div id="results">
  <?php
  echo $pagenav;/pic/div>
  ?>
  </div>
  </body>
  </html>
  css代碼:
  /* CSS Document */
  /* CSS Document */
  #result ul li{
  height:20px;
  width:auto;
  display:block;
  color:#999;
  border:1px solid #999;
  float:left;
  list-style:none;
  font-size:12px;
  margin-left:5px;
  line-height:20px;
  vertical-align:middle;
  text-align:center;
  }
  #result ul li a:link{
  width:50px;
  height:20px;
  display:block;
  line-height:20px;
  background:#09C;
  border:1px solid #fff;
  color:#fff;
  text-decoration:none;
  }
  #result ul li a:hover{
  width:50px;
  height:20px;
  display:block;
  line-height:20px;
  background:#09C;
  border:1px solid #fff;
  color:#F60;
  text-decoration:none;
  }
  ajaxpg.js文件如下:
  /pic/div>
  var http_request=false;
  function send_request(url){/pic/div>
  http_request=false;
  /pic/div>
  if(window.XMLHttpRequest){/pic/div>
  http_request=new XMLHttpRequest();
  if(http_request.overrideMimeType){/pic/div>
  http_request.overrideMimeType("text/xml");
  }
  }
  else if(window.ActiveXObject){/pic/div>
  try{
  http_request=new ActiveXObject("Msxml2.XMLHttp");
  }catch(e){
  try{
  http_request=new ActiveXobject("Microsoft.XMLHttp");
  }catch(e){}
  }
  }
  if(!http_request){/pic/div>
  window.alert("創(chuàng)建XMLHttp對象失敗!");
  return false;
  }
  http_request.onreadystatechange=processrequest;
  /pic/div>
  http_request.open("GET",url,true);
  http_request.send(null);
  }
  /pic/div>
  function processrequest(){
  if(http_request.readyState==4){/pic/div>
  if(http_request.status==200){/pic/div>
  document.getElementById("results").style.display="none";
  document.getElementById(reobj).innerHTML=http_request.responseText;
  }
  else{/pic/div>
  alert("您所請求的頁面不正常!");
  }
  }
  }
  function dopage(obj,url){
  document.getElementById(obj).innerHTML="<font color='green' font-size='12'>正在讀取數(shù)據(jù)...</font>";
  send_request(url);
  reobj=obj;
  }
  數(shù)據(jù)庫文件如下:
  -- phpMyAdmin SQL Dump
  -- version 2.8.1
  -- /pic/div>
  --
  -- 主機: localhost
  -- 生成日期: 2010 年 01 月 22 日 14:41
  -- 服務器版本: 5.0.22
  -- PHP 版本: 5.2.12
  --
  -- 數(shù)據(jù)庫: `demo`
  --
  -- --------------------------------------------------------
  --
  -- 表的結構 `brand`
  --
  CREATE TABLE `brand` (
  `id` int(7) NOT NULL auto_increment,
  `sp_brand` varchar(255) default NULL,
  PRIMARY KEY  (`id`)
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=19 ;
  --
  -- 導出表中的數(shù)據(jù) `brand`
  --
  INSERT INTO `brand` (`id`, `sp_brand`) VALUES (1, 'hello world'),
  (2, '你好'),
  (3, '恩'),
  (4, 'fdsafdsafdsa'),
  (5, 'fdsafdafdsafdas'),
  (6, 'fdsafdsa'),
  (7, 'fdsafdsafdas'),
  (8, '恩'),
  (9, '恩'),
  (10, '恩'),
  (11, '恩11'),
  (12, '恩'),
  (13, '恩'),
  (14, '恩'),
  (15, '恩'),
  (16, '恩'),
  (17, '恩'),
  (18, '恩18');
  下面介紹這些文件的功能
  ajaxpg.js:ajax無刷新核心文件,一般不要去作修改.
  index.php:實現(xiàn)ajax無刷新的文件了,這里調用了ajaxpg.js文件,配置了mysql用戶密碼,要和自己本地的一致,以及顯示分頁的效果.
  page.css:這是分頁的CSS樣式文件,用來美化的,就不多介紹了.
  brand.sql:這是MYSQL數(shù)據(jù)庫的文件了,進行導入到MYSQL數(shù)據(jù)庫中,同樣,如果不會導入,可以參考PHPfensi.com中如何導入.sql文章即可.

【php+ajax實現(xiàn)無刷新數(shù)據(jù)分頁例子】相關文章:

php+ajax實現(xiàn)無刷新的新聞留言系統(tǒng)01-10

html無刷新分頁前端代碼03-14

如何實現(xiàn)bootstrap jquery dataTable異步ajax刷新表格數(shù)據(jù)02-01

一個PHP+MSSQL分頁的例子02-23

基于PHP+Ajax實現(xiàn)表單驗證的詳解01-01

PHP如何使用curl實現(xiàn)數(shù)據(jù)抓取02-05

cakephp的分頁排序12-09

word怎樣自動分頁02-20

php分頁類代碼10-03