分頁代碼
代碼如下 |
複製代碼 |
<?php //page當前頁,num每頁的頁數 $page=isset($_GET['page'])?intval($_GET['page']):1; $num=5; $conn = mysql_connect('127.0.0.1','root',''); if (!$conn) { die('Could not connect:'.mysql_error()); } mysql_select_db('shop'); //擷取記錄總數 $total=mysql_num_rows(mysql_query("select * from user")); //計算頁數 $pagenum=ceil($total/$num); //限制頁數不能超出範圍 If($page>$pagenum || $page == 0){ Echo 'Error : Can Not Found The page.'; Exit; } //語句“Select * from table limit 0,10”從table表提取十條資訊,0為起點,10為提取的數目 //$offset為起點值,如當前頁為第一頁,每頁5條,起點即為0,同理當前為第二頁,起點將為5 $offset=($page-1)*$num; $result=mysql_query("select * from user limit $offset,$num"); while($it=mysql_fetch_array($result)){ echo 'id:'.$it['id'].' name:'.$it['name'].'<br />'; } //顯示連結頁面切換連結,當前頁無連結 for($i=1;$i<=$pagenum;$i++){ $show=($i!=$page)?"<a href='index.php?page=".$i."'>$i</a>":"<b>$i</b>"; echo $show." "; } echo $total.'條記錄,每頁5條,共'.$pagenum.'頁'; mysql_free_result($result); mysql_close($conn); ?> |
執行個體2
代碼如下 |
複製代碼 |
<? //function.php 這裡是主函數 function php_page($page_dbname,$page_size,$page) { if ($page=="") {$page=1;}; if ($ljjl=="") {$ljjl=0;}; if($page) { //$page_dbname="tb_insert"; //$page_size=4; //每頁顯示4條記錄 $query="select count(*) as total from ".$page_dbname; //從資料庫中讀取資料 $result=mysql_query($query); $message_count=mysql_result($result,0,"total"); //擷取總的記錄數 $page_count=ceil($message_count/$page_size); //擷取總的頁數 $offset=($page-1)*$page_size; $query="select * from ".$page_dbname." order by id desc limit $offset, $page_size"; $result=mysql_query($query); //內容顯示 這裡只是簡單的作個示範,可以按你的要求隨便改動。 while ($myrow=@mysql_fetch_array($result)) { echo $myrow[name]." | ".$myrow[number]." | ".$myrow[tel]." | ".$myrow[address]."<br><br>"; } } echo "頁次:".$page."/"; echo $page_count."頁 記錄:"; echo $message_count."條"."<br>"; if($page!=1) { echo "<a href=index.php?page=1>首頁</a> "; echo "<a href=index.php?page=".($page-1).">上一頁</a> "; } else { echo "首頁 "; echo "上一頁 "; } for($i=1; $i<=$page_count; $i++) { if ($page==$i) {echo $i." ";} else {echo "<a href=index.php?page=$i>$i</a> ";} } if($page<$page_count) { echo "<a href=index.php?page=".($page+1).">下一頁</a> "; echo "<a href=index.php?page=".$page_count.">尾頁</a>"; } else { echo "下一頁 "; echo "尾頁"; } } ?> |
//conn.php 串連資料庫
代碼如下 |
複製代碼 |
<?php $id=mysql_connect("localhost","root","root")or dir('串連失敗:' . mysql_error()); //mysql_connect("IP","使用者名稱","密碼") if(mysql_select_db("db_database06",$id)) echo ""; else echo ('串連失敗:' . mysql_error()); mysql_query("set names gb2312"); ?> |
//主程式,將上面倆個檔案包含進來,再調用一個php_page()就可完成分頁。:)
代碼如下 |
複製代碼 |
<?php require_once("conn.php"); require_once("function.php"); php_page("tb_insert",3,$_GET[page]); // "tb_insert"是表名,3是在每頁要顯示的記錄數,$_GET[page]是page的id,直接用就可以了。 ?> |
上在的一種是文字分頁,比如說上一頁,下一頁之類的,還有一種數字分頁,像1,2,3...之類的,這個比較簡單,前者稍微複雜些.最後一種是他們2者結合
代碼如下 |
複製代碼 |
--> 1 //擷取當前頁數 if(isset($_GET['page'])){ $page = intval($_GET['page']); } else { $page=1; } $PageSize = 1; //每頁的記錄數量 // 擷取總數量 $sql = "select count(*) from blog"; $result = mysql_query($sql); $row = mysql_fetch_row($result); $amount = $row[0]; /*計算總頁數 if($amount){ if($amount<$PageSize) { //如果總數量小於每頁的記錄數量$PageSize,那麼只有一頁. $PageCount = 1; } if($amount%$PageSize) { //總數量除以每頁的記錄數量取於 $PageCount =& amp;nbsp;(int)($amount/$PageSize)+1;//如果有於,則頁數等於總數量除每頁的記錄數加1 } else{ $PageCount =& amp;nbsp;$amount/$PageSize;//沒有,則結果是頁數 } } else{ $PageCount = 0; }*/ $PageCount = ceil($amount/$PageSize);//總頁數=總數量除以每頁數量 如果有小樹,則進位< span style="color: #008000;"> if($Page>$PageCount|$page==0){// 如果當前頁數大於總頁數 echo "不能發現此頁!"; exit(); } //翻頁連結 $PageOut = ''; if($page==1){//如果頁數只有一頁 $PageOut .= '第一頁|上一頁'; } else{ $PageOut .= '<a href="index.php?page=1">第一頁& lt;/a>|<a href="index.php?page='.($page-1).'">上一頁</a>|'; } if($page==$PageCount||$PageCount==0){//如果當前頁等於總也數 $PageOut .= '下一頁|尾頁'; } else{ $PageOut .= '<a href="index.php?page='.($page+1).'">下一頁</a>|<a href="index.php?page='.$PageCount.'">尾頁</a>'; } //擷取資料 if($amount){ $sql="select * from blog limit ".($page-1)*($PageSize).",$PageSize"; $result=mysql_query($sql); while($row=mysql_fetch_array($result)){//此段代碼只是樣本 $blogs[] = array('bid'=>$row['bid'],'title'=>$row['title']); foreach ($blogs as $blog){ $title=$blog['title']; } $output = "<a href=index.php?action=blog_del&bid=$blog[bid]>刪除</a>". "<a href=index.php?action=blog_edit&bid=$blog[bid]>編輯</a>". "<a href=index.php?action=blog_view&bid=$blog[bid]>查看</a>"; include("template/default/blog.tpl.php"); echo $PageOut; } for($i=1;$i<=$PageCount;$i++){//數字分頁 $Pageshow = ($i!=$page)?"<a href='index.php?page=".$i."'>$i</a>":"<b>$i</b>"; echo $PageShow; } echo $amount.'條記錄,每頁'.$PageSize.'條,共'.$PageCount.'頁'; } |