<output id="r87xx"></output>
    1. 
      
      <mark id="r87xx"><thead id="r87xx"><input id="r87xx"></input></thead></mark>
        •   

               當(dāng)前位置:首頁>軟件介紹>PHP編程教程Ajax完成分頁技巧 查詢:
               
          PHP編程教程Ajax完成分頁技巧

                  基于php和ajax的分頁技術(shù)代碼,下面有兩個(gè)php文件,一個(gè)是sn_inq.php,另一個(gè)是sn_show.php,前一個(gè)php文件調(diào)用后一個(gè)php文件,實(shí)現(xiàn)ajax分頁,運(yùn)行sn_inq即可實(shí)現(xiàn)效果,不過得修改數(shù)據(jù)庫哦。具體代碼如下:紅色標(biāo)注的地方要特別注意修改哦~

                  我的數(shù)據(jù)庫名是inv,表名是sn,字段有:sn_id,sn_plant,sn_sales,sn_act,sn_type,sn_sts.....

                  1.sn_inq.php

                  //getFormValue 用于獲取表單中所有輸入控件的值,并將輸入值組成一個(gè)字符串傳到服務(wù)器。

                  <script type="text/javascript"> function getFormValue(form){

                  var str='';

                  var ft,fv;

                  for (var i=0; i<form.elements.length; i++){ fv = form.elements[i];

                  ft = fv.type.toLowerCase();

                  switch(ft){

                  case 'select-one':

                  str+=fv.name+'='+escape(fv.value)+'&'; break;

                  case 'radio':

                  if (fv.checked){

                  str+=fv.name+'='+escape(fv.value)+'&'; }

                  break;

                  case 'checkbox':

                  if (fv.checked){

                  str+=fv.name+'='+escape(fv.value)+'&'; }

                  break;

                  case 'text':

                  str+=fv.name+'='+escape(fv.value)+'&'; break;

                  case 'password':

                  str+=fv.name+'='+escape(fv.value)+'&'; break;

                  case 'hidden':

                  str+=fv.name+'='+escape(fv.value)+'&'; break;

                  case 'textarea':

                  str+=fv.name+'='+escape(fv.value)+'&'; break;

                  default:

                  break;

                  }

                  }

                  return str.split(/s/).join('')

                  }

                  //showcomment(page) 用于顯示分頁數(shù)據(jù),被查詢按鈕onclick 事件調(diào)用, url為后臺(tái)處理數(shù)據(jù)并輸出XML格式數(shù)據(jù)的文件url。

                  function showcomment(page) {

                  var x = new Ajax('statusid', 'XML'); url = 'sn_show.php?page='+page+'&'+getFormValue(document.form1);

                  x.get(url , function(s) {

                  if(s.lastChild){

                  getbyid("show").innerHTML = "Loading……"; getbyid("show").innerHTML = s.lastChild.firstChild.nodeValue;

                  removeLoading(document.getElementById("show")); }

                  else{

                  document.form1.submit();

                  }

                  });

                  }

                  //displayLoading用于顯示Loading,提示用戶等待

                  function displayLoading(element) { var image = document.createElement("img"); image.setAttribute("src","progressbar.gif"); image.setAttribute("title","loading..."); var text = document.createTextNode("loading……"); element.appendChild(image);

                  element.appendChild(text);

                  }

                  //removeLoading用于去掉Loading

                  function removeLoading(element){

                  var image = element.getElementsByTagName("img"); for(var i=0;i<image.length;i++){

                  element.removeChild(image[i]);

                  }

                  }

                  //ajax

                  function Ajax(statusId, recvType) { var aj = new Object();

                  displayLoading(document.getElementById("show")); var clientHeight = scrollTop = 0;

                  if(navigator.userAgent.toLowerCase().indexOf('opera') > -1) {

                  clientHeight = document.body.clientHeight; scrollTop = document.body.scrollTop; } else {

                  clientHeight = document.documentElement.clientHeight; scrollTop = document.documentElement.scrollTop; }

                  if(document.getElementById(statusId)) { aj.statusId = document.getElementById(statusId); document.getElementById(statusId).style.top = 10+"px"; } else {

                  var divElement = document.createElement("DIV"); divElement.id = "xspace-tipDiv";

                  divElement.className = "xspace-ajaxdiv"; divElement.style.cssText = "width:200px; height:40px; line-height: 40px; text-align:

                  center;";

                  divElement.style.left = 10+"px";

                  divElement.style.top = 10+"px";//(clientHeight +scrollTop - 60)

                  divElement.id = statusId;

                  document.body.appendChild(divElement); aj.statusId = divElement;

                  }

                  aj.targetUrl = '';

                  aj.sendString = '';

                  aj.recvType = recvType ? recvType : 'HTML';//HTML XML aj.resultHandle = null;

                  aj.createXMLHttpRequest = function() { var request = false;

                  if(window.XMLHttpRequest) {

                  request = new XMLHttpRequest();

                  if(request.overrideMimeType) {

                  request.overrideMimeType('text/xml'); }

                  } else if(window.ActiveXObject) { var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP',

                  'Msxml2.XMLHTTP.7.0', 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0',

                  'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];

                  for(var i=0; i<versions.length; i++) { try {

                  request = new ActiveXObject(versions[i]); if(request) {

                  return request;

                  }

                  } catch(e) {

                  //alert(e.message);

                  }

                  }

                  }

                  return request;

                  }

                  aj.XMLHttpRequest = aj.createXMLHttpRequest(); aj.processHandle = function() {

                  aj.statusId.style.display = '';

                  if(aj.XMLHttpRequest.readyState == 4) { if(aj.XMLHttpRequest.status == 200) { if(aj.recvType == 'HTML') {

                  aj.resultHandle(aj.XMLHttpRequest.responseText); } else if(aj.recvType == 'XML') { aj.resultHandle(aj.XMLHttpRequest.responseXML); }

                  aj.statusId.style.display = 'none'; } else {

                  aj.statusId.innerHTML = xml_http_load_failed; }

                  }

                  }

                  aj.get = function(targetUrl, resultHandle) { aj.targetUrl = targetUrl;

                  aj.XMLHttpRequest.onreadystatechange = aj.processHandle; aj.resultHandle = resultHandle;

                  if(window.XMLHttpRequest) {

                  aj.XMLHttpRequest.open('GET', aj.targetUrl); aj.XMLHttpRequest.send(null);

                  } else {

                  aj.XMLHttpRequest.open("GET", targetUrl, true); aj.XMLHttpRequest.send();

                  }

                  }

                  aj.post = function(targetUrl, sendString, resultHandle) { aj.targetUrl = targetUrl;

                  aj.sendString = sendString;

                  aj.XMLHttpRequest.onreadystatechange = aj.processHandle; aj.resultHandle = resultHandle; aj.XMLHttpRequest.open('POST', targetUrl); aj.XMLHttpRequest.setRequestHeader('Content-Type',

                  'application/x-www-form-urlencoded'); aj.XMLHttpRequest.send(aj.sendString); }

                  return aj;

                  }

                  function getbyid(id) {

                  if (document.getElementById) {

                  return document.getElementById(id); } else if (document.all) {

                  return document.all[id];

                  } else if (document.layers) {

                  return document.layers[id];

                  } else {

                  return null;

                  }

                  }

                  </script>

                  <?php

                  //注意:此處如果有filesedset的話,form表單一定要放在fieldset里面,否則出錯(cuò)。

                  echo '<form name="form1" action="" method="post"> <table cellpadding="0" cellspacing="1"> <tr>

                  <th>SN</th>

                  <td>

                  <input type="text" name="sn_id_1" value="'._POST['sn_id_1'].'" size="16"

                  maxlength="8"/> to

                  <input type="text" name="sn_id_2" value="'._POST['sn_id_2'].'" size="16"

                  maxlength="8"/>

                  <input type="button" name="sn_submit" value="Search" onClick="showcomment(1)"/>

                  </td>

                  </tr>

                  </table>

                  </form>

                  <div id="show"></div>';

                  ?>

                  2.sn_show.php:

                  <?php

                  //page function

                  function showpage(total){

                  global page,pagenav,middle,num,pagenum,offset,prepg,nextpg; //獲取page=18中的page的值,假如不存在page,那么頁數(shù)就是1。

                  page=isset(_REQUEST['page'])?intval(_REQUEST['page']):1; //每層分頁條顯示4個(gè)分頁連接

                  middle = '4';

                  //每頁顯示10條數(shù)據(jù)

                  num=10;

                  //獲得總頁數(shù),也是最后一頁

                  pagenum=ceil(total/num);

                  //獲得首頁

                  page=min(pagenum,page);

                  //上一頁

                  prepg=page-1;

                  //下一頁

                  nextpg=(page==pagenum ? 0 : page+1);

                  offset=(page-1)*num;

                  if(pagenum<=1) return false;

                  if(prepg){

                  pagenav.=' <a href="javascript:;" onclick="javascript:showcomment(1);">'.iconv('gb2312','gb2312','首頁').'</a> '; pagenav.=' <a href="javascript:;" onclick="javascript:

                  showcomment('.prepg.');">'.iconv('gb2312','gb2312','上一頁').'</a> ';

                  }else{

                  pagenav.="<font color='gray'>".iconv('gb2312','gb2312','首頁')."</font>"."&nbsp";

                  pagenav.="<font color='gray'>".iconv('gb2312','gb2312','上一頁')."</font>";

                  }

                  if(nextpg){

                  pagenav.=' <a href="javascript:;" onclick="javascript:showcomment('.nextpg.');">'.iconv('gb2312','gb2312','下一頁').'</a> ';

                  pagenav.=' <a href="javascript:;" onclick="javascript:showcomment('.pagenum.');">'.iconv('gb2312','gb2312','尾頁').'</a> ';

                  }else{

                  pagenav.="<font color='gray'>".iconv('gb2312','gb2312','下一頁')."</font>"."&nbsp";

                  pagenav.="<font color='gray'>".iconv('gb2312','gb2312','尾頁')."</font>"."&nbsp";

                  }

                  pagenav.='</select>'.iconv('gb2312','gb2312','共 ') . pagenum .'&nbsp'.iconv('gb2312','gb2312','頁'); for(h=(page-middle<1?1:page-middle);h<=(page+middle>pagenum?pagenum:page+middle)

                  ;h++){

                  if(h==page){

                  pagenav.="<b> h </b>";

                  }else{

                  pagenav.="&nbsp;&nbsp;<a href="javascript:showcomment(".h.");">".iconv('gb2312','gb2312',h)."</a>&nbsp;&nbsp;";

                  }

                  }

                  pagenav.="&nbsp;&nbsp;&nbsp;&nbsp;";

                  pagenav.=iconv('gb2312','gb2312','轉(zhuǎn)到 ');

                  pagenav.="<select id='JumpSelect' name='NowPage' size='1'

                  onchange="showcomment(this.value);">";

                  for (i = 1; i <= pagenum;i++){

                  if(page == i){

                  pagenav.= "<option value='".i."' selected>".i."</option>";

                  }else{

                  pagenav.= "<option value='".i."' >".i."</option>"; }

                  }

                  pagenav.="</select>";

                  pagenav.="頁";

                  return pagenav;

                  }

                  //connect to database

                  function db_link()

                  {

                  access_id = "root";

                  db_name = "inv";

                  @ db = mysql_connect('localhost', access_id, '831025') or

                  die("Could not connect to database. Please contact with IT supporting team ASAP.");

                  mysql_query("SET NAMES 'GBK'"); mysql_select_db(db_name);

                  return db;

                  }

                  link = db_link();

                  //get inquiry criteria,用 POST取得數(shù)據(jù)也行 sn_id_1 = _REQUEST['sn_id_1']; sn_id_2 = _REQUEST['sn_id_2'];

                  //inquiry total pages

                  sn_sql = "SELECT * FROM sn WHERE 1 "; if (sn_id_1 != ''){

                  sn_sql .= "AND sn_id >= '".sn_id_1."' "; }

                  if (sn_id_2 != ''){

                  sn_sql .= "AND sn_id <= '".sn_id_2."' "; }

                  sn_sql .= "ORDER BY sn_id DESC ";

                  sn_res = mysql_query(sn_sql); total = mysql_num_rows(sn_res);

                  //show page

                  pageshow = showpage(total);

                  //inquiry current page

                  sn_sql .= " limit offset,num";

                  sn_res = mysql_query(sn_sql);

                  sn_num = mysql_num_rows(sn_res);

                  //output inquiry result as XML

                  header("Content-Type: text/xml");

                  if(total > 0){

                  echo '<?xml version="1.0" encoding="gb2312"?>'; echo '<root>';

                  echo '<![CDATA[';

                  echo '<fieldset>

                  <legend>LIST</legend>

                  <table>

                  <tr>

                  <th>No</th>

                  <th>SN</th>

                  <th>Plant</th>

                  <th>Sales</th>

                  <th>Act</th>

                  <th>Type</th>

                  <th>Status</th>

                  <th>Release Date</th> <th>Approve Date</th> <th>Reject Date</th> <th>Cancel Date</th> <th>Close Date</th>

                  </tr>';

                  num = offset;

                  for (i = 0; i < sn_num; i++) {

                  sn_row = mysql_fetch_array(sn_res); if (i % 2 == 0) {

                  echo '<tr style="cursor:hand" >'; }else{

                  echo '<tr style="cursor:hand" >'; }

                  echo'<td class="list center">'.(num+1).'</td> <td class="list right blue">'.sn_row['sn_id'].'</td> <td class="list center">'.sn_row['sn_plant'].'</td> <td class="list right">'.sn_row['sn_sales'].'</td> <td class="list center red">'.sn_row['sn_act'].'</td> <td class="list center">'.sn_row['sn_type'].'</td> <td class="list center">'.sn_row['sn_sts'].'</td> <td class="list left">'.substr(sn_row['sn_rel_date'],0,10).'</td>

                  <td class="list left">'.substr(sn_row['sn_apv_date'],0,10).'</td>

                  <td class="list left">'.substr(sn_row['sn_rej_date'],0,10).'</td>

                  <td class="list left">'.substr(sn_row['sn_can_date'],0,10).'</td>

                  <td class="list left">'.substr(sn_row['sn_cls_date'],0,10).'</td>

                  </tr>';

                  num++;

                  }

                  echo '</table>';

                  echo '<div>'.pageshow.'</div>';

                  echo '</fieldset>';

                  echo ']]>';

                  echo '</root>';

                  }else{

                  echo 'find nothing';

                  }

                   

                  


          PHP緩存服務(wù)器之RedisPHP教學(xué)之PHP基本語法
          PHP程序員如何不斷學(xué)習(xí)?PHP二進(jìn)制加密與解密的解決辦法
          PHP語法入門PHP平臺(tái)的缺陷
          如何成為PHP高手PHP入門學(xué)習(xí)基礎(chǔ)教程
          php主動(dòng)加載PHP提高編程效率的方法
          php基礎(chǔ)知識(shí)點(diǎn)總結(jié)PHP從零入門教程
          PHP內(nèi)核解密學(xué)習(xí)PHP的方法與技巧
          PHP7性能翻倍關(guān)鍵大揭秘如何遏制PHP木馬攻擊
          信息發(fā)布:廣州名易軟件有限公司 http://www.jetlc.com
          • 勁爆價(jià):
            不限功能
            不限用戶
            1998元/年

          • 微信客服

            <output id="r87xx"></output>
          1. 
            
            <mark id="r87xx"><thead id="r87xx"><input id="r87xx"></input></thead></mark>
              • 日本尻屄| 翔田千里一区二区 | 亚洲国产精品久久久久久 | 中国第一美女毛片 | 少妇厨房偷情理伦 | 一级黄视频 | 国产二线在线观看 | 免费看日本一级片 | 操逼网123首页 | 日韩无码电影网 |