留言板翻頁的實現詳解

我們在留言板的設計中,遇到的最大問題就是如何讓留言板具有翻頁功能,而且可以自動判斷是否到瞭最後一頁,下面我就將我在設計留言板時用到的技術與大傢分享:
首先連接數據庫,這裡就不講瞭,下面就將每一條語句作詳細的說明。
<?
        .
        .
        .
$query=”select * from note order by sendtime desc”;  #按時間將留言排序
$total=MySQL(和PHP搭配之最佳組合)_numrows($result);#計算總共有多少條留言
for ($i=0; $i<$total; $i++) #將每一條留言內容賦值到一個函數中
{
$show[$i]=MySQL(和PHP搭配之最佳組合)_result($result,$i,”留言內容”);#這樣第一條留言就在$show[0]中,第二條則在$show[1]中…
}
if(!$page){$page=0;} #給頁數賦值,如果已經賦過,則不動,這是唯一後再次調用此頁十設計的
$eachpage=任意數; #希望沒頁顯示的留言數
$start=$page*$eachpage;#此處是每頁顯示的第一條語句在數據庫中的行數,比如用戶翻到第二頁,則改頁第一條語句在數據庫中的行數為$page*$eachpage,即”1*每頁顯示的留言數”
$end=$start+$eachpage;#此處為改頁的最後一行在數據庫中的行數
if($end>$total) {$end=$total;}#如果翻到瞭最後一頁,則最後一行往往不是”$start+$eachpage”,而是數據庫中的最後一行
$totalpage=ceil($total/$eachpage);#這是一條計算頁數的語句,ceil()是取整函數
?>
         .
         .
         .
<?
for($i=$start;$i<$end;$i++){#下面到瞭真正開始顯示內容的時候瞭,從改頁的第一行循環到改頁最後一行
echo <td width=”450″ valign=”top” align=”left”><font face=”楷體_GB2312″ color=”#000066″>;#將留言放在表中,這樣會比較好看,而且可以任意添加裝飾
echo $show[$i][content];#顯示相應留言的內容
echo </font></td>;
}         
if($page>0){$pagenow=$page-1;?>#將$pagenow設置成比$page小1,是為瞭當用戶點擊”上一頁”時去到比當前頁數小1的頁,因為”第1頁”的$page為0,所以隻有當$page大於0時才會顯示”上一頁”鏈接
      <a href=<?echo “留言板.php(做為現在的主流開發語言)?qqname=$qqname&serial=$serial&page=$pagenow”;?>>上一頁</a> #顯示”上一頁”的鏈接,並傳遞數值,當再次調用”留言板.php(做為現在的主流開發語言)“時,$page值將是本頁中$pagenow的值
      <?}       
if($end!=$total){$pagenow=$page+1;?>#將$pagenow設置成比$page大1,隻要”$end”不等於”$total”,就說明當前頁還不是最後一頁,即顯示”下一頁”鏈接
      <a href=<?echo “留言板.php(做為現在的主流開發語言)?qqname=$qqname&serial=$serial&page=$pagenow”;?>>下一頁</a> #顯示”上一頁”的鏈接,並傳遞數值
      <?}?>#程序結束
以上為翻頁的解決辦法,你可以根據自己的愛好加一些圖片之類的,那樣你的留言板就會更更加漂亮!

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。