PHP開發簡單留言本之分頁顯示留言功能
要在頁面顯示所有的使用者留言,並透過分頁顯示。
分頁的一般想法是:先確定每頁需要顯示的留言數目,拿總的留言數除以每頁顯示的留言數,得到總頁數,如果不能整除,餘數單獨成為一個頁面,總頁數+1。

繼續使用上一節設定的資料庫的類別LyDB。
這裡設定每頁顯示3個資料
<?php $page_size=3; ?>
透過一個公用函數把每頁顯示數page_size,留言數ly_count,總頁數page_count放到一個array數組中
<?php
class LyDb{
//....省略
public function select_page_info(){
$sql = "select count(*) as pagecount from ly";
$query = mysqli_query($this->link,$sql);
$row = mysqli_fetch_assoc($query);
$ly_count=$row["pagecount"];
$page_count=($ly_count%$this->page_size==0)?($ly_count/$this->page_size):($ly_count/$this->page_size+1);
$page_info=array("ly_count"=> $ly_count,"page_count"=>(int)$page_count,"page_size"=>$this->page_size);
return $page_info;
}
//......省略
}
?>透過一個公用函數來設定目前頁$page_no
判斷當頁小於1時,繼續顯示第一頁,當頁大於所得總頁數時,顯示最後一頁
確定首頁和末頁
<?php
lass LyDb{
//....省略
public function select_page_result(&$page_no){
$page_info=$this->select_page_info();
if(!isset($page_no))$page_no=1;
else if($page_no<1)$page_no=1;
else if($page_no>$page_info["page_count"])$page_no=$page_info["page_count"];
$first=($page_no-1)*$this->page_size;
$sql="select * from ly order by id desc limit $first,$this->page_size ";
$query=mysqli_query($this->link,$sql);
$page_result=array("page_data"=>$query,"page_info"=>$page_info,"page_no"=>$page_no);
return $page_result;
}
//......省略
}
?>在前端頁面中新增分頁功能
<div class="pagination" > 当前第<?php echo $page_result["page_no"];?>页/ 共<?php echo $page_result["page_info"]["page_count"];?>页/ 每页显示<?php echo $page_result["page_info"]["page_size"]; ?>条/ 共<?php echo $page_result["page_info"]["ly_count"]; ?>条留言 <a href="index.php?pn=<?php echo ($page_result['page_no']-1);?>">上一页</a> <a href="index.php?pn=<?php echo ($page_result['page_no']+1);?>">下一页</a> <a href="index.php?pn=1">首页</a> <a href="index.php?pn=<?php echo ($page_result['page_info']['page_count']);?>">尾页</a> </div>
新建檔案
<div class="pagination" >
当前第<?php echo $page_result["page_no"];?>页/
共<?php echo $page_result["page_info"]["page_count"];?>页/
每页显示<?php echo $page_result["page_info"]["page_size"]; ?>条/
共<?php echo $page_result["page_info"]["ly_count"]; ?>条留言
<a href="index.php?pn=<?php echo ($page_result['page_no']-1);?>">上一页</a>
<a href="index.php?pn=<?php echo ($page_result['page_no']+1);?>">下一页</a>
<a href="index.php?pn=1">首页</a>
<a href="index.php?pn=<?php echo ($page_result['page_info']['page_count']);?>">尾页</a>
</div>
預覽
Clear
- 課程推薦
- 課件下載
課件暫不提供下載,工作人員正在整理中,後期請多關注該課程~ 















