您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關php如何實現記錄分頁,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
php實現記錄分頁的思路:1、獲取結果集中的記錄數;2、設置每頁顯示記錄的數量;3、獲取總頁面數量;4、控制每頁顯示的記錄數;5、通過傳遞參數的方式通知腳本程序顯示的頁碼即可。
本文操作環境:Windows7系統,PHP7.4版,Dell G3電腦。
php實現記錄分頁的思路是什么?
PHP+Mysql 實現數據分頁顯示:
獲取結果集中的記錄數 可以在SELECT語句中使用COUNT()函數獲取結果集中的記錄數量
設置每頁顯示記錄的數量 假定使用變量$PageSize
來保存每頁顯示記錄的數量,它的值由 用戶根據需要自行設置,可以直接通過賦值語句來實現。
獲取總頁面數量 可以通過$RecordCount
和$PageSize
兩個數據計算得到總頁面數量$PageCount
,
如何顯示第n 頁中的記錄雖然使用 PageSize屬性可以控制每頁顯示的記錄數,但是要 顯示那些記錄呢?可以在SELECT語句中使用LIMIT子句指定查詢記錄的范圍, 其 使用方法如下: SELECT * FROM 表名 LIMIT起始位置, 顯示記錄數量例如,要獲取第$Page
頁 中的記錄,可以使用下面的語句:SELECT * FROM 表名LIMIT ($Page- 1) * $ PageSize, $ PageSize
如何通知腳本要顯示的頁碼可以通過傳遞參數的方式通知腳本程序顯示的頁碼。假定分頁顯記錄的腳本為 viewPage. php,傳遞參數的鏈接如下:http:// localhost/ viewPage. php? page= 2
參數page用來指定當前的頁碼。在viewPage. php中,使用下面的語句讀取參數:
<!doctype html> <html> <head> <meta charset="utf-8" /> <title>Document</title> </head> <body> <?php header("content-type:text/html;charset=utf-8"); //獲取當前頁碼 $page=$_GET['page']; if($page==0){ $page=1; } //設置每頁最大能顯示的數量 $pagesize=3; //連接數據庫 $conn=mysql_connect("localhost","root","root"); mysql_select_db("test"); mysql_query("set names utf-8"); if(!$conn){ die("mysql_connect_failed".mysql_connect_error()); } else echo("connected succeed"."<br />"); //獲取結果集的記錄數 $row=mysql_fetch_row(mysql_query("select count(1) from clerk")); $recordcount=$row[0]; //計算總頁數 if($recordcount==0) $pagecount=0; else if($recordcount<$pagesize ||$recordcount==$pagesize){ $pagecount=1; //如果 記錄 總數 量小 于 每頁 顯示 的 記錄 數量, 則 只有 一頁 } else if($recordcount%$pagesize==0){ $pagecount=$recordcount/$pagesize; //如果 沒有 余數, 則 頁數 等于 總 記錄 數量 除以 每頁 顯示 記錄 的 數量 } else $pagecount=(int)($recordcount/$pagesize)+1; //取 記錄 總數 量 不能 整除 每頁 顯示 記錄 的 數量, // 則 頁數 等于 總 記錄 數量 除以 每頁 顯示 記錄 數量 的 結果 取整 再加 1 echo("當前頁碼:".$page."/".$pagecount."<br />"); ?> <table width="449" border="1"> <tr> <td>員工姓名</td> <td>職務</td> <td>薪水</td> </tr> <?php //循環顯示當前頁面的記錄 header("content-type:text/html;charset=utf-8"); echo $page; //$sql="select * from clerk limit" .($page-1)*$pagesize.",".$pagesize; //$page為當前頁碼 $sql=($page-1)*$pagesize; $result=mysql_query("select * from clerk limit {$sql},{$pagesize}"); while($row=mysql_fetch_row($result)) { echo("<tr />"); echo("<td>$row[0]</td>"); echo("<td>$row[2]</td>"); echo("<td>$row[3]</td>"); echo("<tr />"); } mysql_close($conn); //顯示分頁鏈接 if($page==1){ echo("第一頁"); } else echo("<a href=viewpage.php?page=1>第一頁</a>"); //設置上一頁連接 if($page==1){ echo("上一頁"); } else echo("<a href=viewpage.php?page=".($page-1).">上一頁</a>"); //設置下一頁鏈接 if($page==$pagecount){ echo("下一頁"); } else echo("<a href=viewpage.php?page=".($page+1).">下一頁</a>"); //設置最后一頁 if($page==$pagecount){ echo("最后一頁"); } else echo("<a href=viewpage.php?page=".$pagecount.">最后一頁</a>"); ?> </table> </body> </html>
關于“php如何實現記錄分頁”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。