php 結果集的分頁實現代碼

<?php 
@mysql_connect("localhost", "root","1981427") //連接數據庫服務器 
or die("數據庫服務器連接失敗"); 
@mysql_select_db("test") //選擇數據庫mydb 
or die("數據庫不存在或不可用"); 
$query = @mysql_query("select * from tablename1") //執行用於計算頁數的SQL語句 
or die("SQL語句執行失敗"); 
$pagesize = 5; //設置每頁記錄數 
$sum = mysql_numrows($query); //計算總記錄數 
if($sum % $pagesize == 0) //計算總頁數 
$total = (int)($sum/$pagesize); 
else 
$total = (int)($sum/$pagesize) + 1; 
if (isset($_GET['page'])) //獲得頁碼 

$p = (int)$_GET['page']; 

else 

$p = 1; 

$start = $pagesize * ($p - 1); //計算起始記錄 
//執行查詢當前頁記錄的SQL語句 
$query = @mysql_query("select * from tablename1 limit $start, $pagesize") 
or die("SQL語句執行失敗"); 
echo "<table border=1>"; //輸出表頭 
//通過循環的方式輸出從第0行到最大的一行的所有記錄 
while($row = mysql_fetch_array($query)) 

$serial_no = $row['id']; //輸出第$i行的serial_no列 
$name = $row['username']; //輸出第$i行的name列 
$salary = $row['password']; //輸出第$i行的salary列 
echo "<tr>"; 
echo "<td>$serial_no</td>"; 
echo "<td>$name</td>"; 
echo "<td>$salary</td>"; 
echo "</tr>"; 

echo "</table>"; //輸出表尾 
if($p > 1) //當前頁不是第一頁時,輸出上一頁的鏈接 

$prev = $p - 1; 
echo "<a href="?page=$prev" href="?page=$prev">上一頁</a> "; 

if($p < $total) //當前頁不是最後一頁時,輸出下一頁的鏈接 

$next = $p + 1; 
echo "<a href="?page=$next" href="?page=$next">下一頁</a>"; 

?>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章