|
首先連接數(shù)據(jù)庫(kù),這里就不講了,下面就將每一條語句作詳細(xì)的說明。
<?
.
.
.
$query="select * from note order by sendtime desc"; #按時(shí)間將留言排序
$total=mysql_numrows($result);#計(jì)算總共有多少條留言
for ($i=0; $i<$total; $i++) #將每一條留言內(nèi)容賦值到一個(gè)函數(shù)中
{
$show[$i]=mysql_result($result,$i,"留言內(nèi)容");#這樣第一條留言就在$show[0]中,第二條則在$show[1]中...
}
if(!$page){$page=0;} #給頁(yè)數(shù)賦值,如果已經(jīng)賦過,則不動(dòng),這是唯一后再次調(diào)用此頁(yè)十設(shè)計(jì)的
$eachpage=任意數(shù); #希望沒頁(yè)顯示的留言數(shù)
$start=$page*$eachpage;#此處是每頁(yè)顯示的第一條語句在數(shù)據(jù)庫(kù)中的行數(shù),比如用戶翻到第二頁(yè),則改頁(yè)第一條語句在數(shù)據(jù)庫(kù)中的行數(shù)為$page*$eachpage,即"1*每頁(yè)顯示的留言數(shù)"
$end=$start+$eachpage;#此處為改頁(yè)的最后一行在數(shù)據(jù)庫(kù)中的行數(shù)
if($end>$total) {$end=$total;}#如果翻到了最后一頁(yè),則最后一行往往不是"$start+$eachpage",而是數(shù)據(jù)庫(kù)中的最后一行
$totalpage=ceil($total/$eachpage);#這是一條計(jì)算頁(yè)數(shù)的語句,ceil()是取整函數(shù)
?>
.
.
.
<?
for($i=$start;$i<$end;$i++){#下面到了真正開始顯示內(nèi)容的時(shí)候了,從改頁(yè)的第一行循環(huán)到改頁(yè)最后一行
echo '<td width="450" valign="top" align="left"><font face="楷體_GB2312" color="#000066">';#將留言放在表中,這樣會(huì)比較好看,而且可以任意添加裝飾
echo $show[$i][content];#顯示相應(yīng)留言的內(nèi)容
echo '</font></td>';
}
if($page>0){$pagenow=$page-1;?>#將$pagenow設(shè)置成比$page小1,是為了當(dāng)用戶點(diǎn)擊""時(shí)去到比當(dāng)前頁(yè)數(shù)小1的頁(yè),因?yàn)?quot;第1頁(yè)"的$page為0,所以只有當(dāng)$page大于0時(shí)才會(huì)顯示""鏈接
<a href=<?echo "'留言板.php?qqname=$qqname&serial=$serial&page=$pagenow'";?>></a> #顯示""的鏈接,并傳遞數(shù)值,當(dāng)再次調(diào)用"留言板.php"時(shí),$page值將是本頁(yè)中$pagenow的值
<?}
if($end!=$total){$pagenow=$page+1;?>#將$pagenow設(shè)置成比$page大1,只要"$end"不等于"$total",就說明當(dāng)前頁(yè)還不是最后一頁(yè),即顯示""鏈接
<a href=<?echo "'留言板.php?qqname=$qqname&serial=$serial&page=$pagenow'";?>></a> #顯示""的鏈接,并傳遞數(shù)值
<?}?>#程序結(jié)束
以上為翻頁(yè)的解決辦法,你可以根據(jù)自己的愛好加一些圖片之類的,那樣你的留言板就會(huì)更更加漂亮!
php技術(shù):留言板翻頁(yè)的實(shí)現(xiàn)詳解,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。