web開發(fā)是今后分布式程式開發(fā)的主流,通常的web開發(fā)都要涉及到與數(shù)據(jù)庫打交道,客戶端從服務(wù)器端讀取通常都是以分頁的形式來顯示,一頁一頁的閱讀起來既方便又美觀。所以說寫分頁程序是web開發(fā)的一個重要組成部分,在這里,我們共同來研究分頁程序的編寫。?
1.用ajax?post數(shù)據(jù)到后臺頁面后,接著要重新連接數(shù)據(jù)庫,別以為用之前的session連接過就可以了
2.為了處理返回亂碼的問題,我添加了header(“Content-Type:text/html;charset=GB2312”);就可以正常顯示了,后來在firefox下檢驗,卻提示我下載這個網(wǎng)頁,上網(wǎng)搜了不少資料,得到一個模糊的認識就是網(wǎng)頁代碼有連接數(shù)據(jù)庫,firefox為了安全起見不會直接顯示而是提示下載,我重新檢查了剛才那條語句,發(fā)現(xiàn)自己多寫了個“”,把它去掉后問題就解決了,哈哈,所以遇到這樣的問題,好好檢查一下html?tag吧,畢竟firefox可不像ie那樣smart
3.最后說一句,做web?site的開發(fā)者,要負責(zé)任,別以為在ie下測試通過就萬事大吉,畢竟不是所有人都用ie,還得要在別的瀏覽器下多做測試,這樣才顯示出你的專業(yè)水準(zhǔn)
ajax腳本:?
代碼如下:
<script> function viewpage(p){ if(window.XMLHttpRequest){ var xmlReq = new XMLHttpRequest(); } else if(window.ActiveXObject) { var xmlReq = new ActiveXObject('Microsoft.XMLHTTP'); } var formData = "page="+p; xmlReq.onreadystatechange = function(){ if(xmlReq.readyState == 4){ document.getElementById('content2').innerHTML = xmlReq.responseText; } } xmlReq.open("post", "hotel_list.php", true); xmlReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xmlReq.send(formData); return false; } </script>
調(diào)用:
代碼如下:
header("Content-Type:text/html;charset=GB2312");?? $pagesize=10;?? //echo?$_POST['page'];?? $result?=?mysql_query("Select?count(DISTINCT?hotelname)?FROM?".TBL_HOTELS);?? $myrow?=?mysql_fetch_array($result);?? $numrows=$myrow[0];?? $pages=intval($numrows/$pagesize);?? if?($numrows%$pagesize)?? $pages++;?? if?(isset($_POST['page'])){?? $page=intval($_POST['page']);?? }?? else{?? //設(shè)置為第一頁?? $page=1;?? }?? $first=1;?? $prev=$page-1;?? $next=$page+1;?? $last=$pages;?? //計算記錄偏移量?? $offset=$pagesize*($page?-?1);?? //讀取指定記錄數(shù)?? $result=mysql_query("select?`hotelname`?,?count(?*?)?from?".TBL_HOTELS."?GROUP?BY?`hotelname`?order?by?id?desc?limit?$offset,$pagesize");?? $num?=?mysql_num_rows($result);?? while?($row?=?mysql_fetch_array($result,MYSQL_NUM))?{?? $hotelname[]?=?$row[0];?? $countpeople[]?=?$row[1];?? }?? for($a=0;$an";?? echo?"<tbody>n";?? echo?"<tr>n";?? echo?"<td>n";?? //rating_bar($title[$a],5);?? echo?"</td>n";?? echo?"<td> <a>$hotelname[$a]</a>n";?? echo?"</td> </tr>n";?? echo?"?<tr>n";?? echo?"<td></td>n";?? echo?"<td>n";?? echo?"@@##@@??推薦人數(shù):($countpeople[$a])?|n";?? echo?"<span>平均分:<strong></strong>?(".$count."票)?|?評論數(shù):()</span>n";?? echo?"</td> </tr> </tbody>n";?? }?? echo?"
“;?? echo?“
“;?? echo?“ 第”.$page.”頁/總”.$pages.”頁?|?總”.$numrows.”條?|?“;?? if?($page>1)?echo?“首頁?|?“;?? if?($page>1)?echo?“上頁?|?“;?? if?($page下頁?|?“;?? if?($page尾頁”;?? echo?“轉(zhuǎn)到第??頁?“;?? echo?“ |
“;