程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php分頁函數示例代碼,php分頁代碼實現方法,分頁示例代碼

php分頁函數示例代碼,php分頁代碼實現方法,分頁示例代碼

編輯:關於PHP編程

php分頁函數示例代碼,php分頁代碼實現方法,分頁示例代碼


php分頁函數示例代碼

 

分享一例php分頁函數代碼,用此函數實現分頁代碼很不錯。

代碼,php分頁函數。

<?php
/*
* Created on 2011-07-28
* Author : LKK , http://lianq.net
* 使用方法:
require_once('mypage.php');
$result=mysql_query("select * from mytable", $myconn);
$total=mysql_num_rows($result);    //取得信息總數
pageDivide($total,10);     //調用分頁函數

//數據庫操作
$result=mysql_query("select * from mytable limit $sqlfirst,$shownu", $myconn);
while($row=mysql_fetch_array($result)){
...您的操作
}
echo $pagecon;    //輸出分頁導航內容
*/

if(!function_exists("pageDivide")){
#$total     信息總數
#$shownu    顯示數量,默認20
#$url     本頁鏈接
function pageDivide($total,$shownu=20,$url=''){

#$page 當前頁碼 www.jbxue.com
#$sqlfirst mysql數據庫起始項
#$pagecon    分頁導航內容
global $page,$sqlfirst,$pagecon,$_SERVER;
$GLOBALS["shownu"]=$shownu;

if(isset($_GET['page'])){
$page=$_GET['page'];
}else $page=1;

#如果$url使用默認,即空值,則賦值為本頁URL
if(!$url){ $url=$_SERVER["REQUEST_URI"];}

#URL分析
$parse_url=parse_url($url);
@$url_query=$parse_url["query"];    //取出在問號?之後內容
if($url_query){
$url_query=preg_replace("/(&?)(page=$page)/","",$url_query);
$url = str_replace($parse_url["query"],$url_query,$url);
if($url_query){
$url .= "&page";
}else $url .= "page";
}else $url .= "?page";

#頁碼計算
$lastpg=ceil($total/$shownu);    //最後頁,總頁數
$page=min($lastpg,$page);
$prepg=$page-1; //上一頁
$nextpg=($page==$lastpg ? 0 : $page+1); //下一頁
$sqlfirst=($page-1)*$shownu;

#開始分頁導航內容
$pagecon = "顯示第 ".($total?($sqlfirst+1):0)."-".min($sqlfirst+$shownu,$total)." 條記錄,共 <B>$total</B> 條記錄";
if($lastpg<=1) return false;    //如果只有一頁則跳出

if($page!=1) $pagecon .=" <a href='$url=1'>首頁</a> "; else $pagecon .=" 首頁 ";
if($prepg) $pagecon .=" <a href='$url=$prepg'>前頁</a> "; else $pagecon .=" 前頁 ";
if($nextpg) $pagecon .=" <a href='$url=$nextpg'>後頁</a> "; else $pagecon .=" 後頁 ";
if($page!=$lastpg) $pagecon.=" <a href='$url=$lastpg'>尾頁</a> "; else $pagecon .=" 尾頁 ";

#下拉跳轉列表,循環列出所有頁碼
$pagecon .=" 到第 <select name='topage' size='1' onchange='window.location=\"$url=\"+this.value'>\n";
for($i=1;$i<=$lastpg;$i++){
if($i==$page) $pagecon .="<option value='$i' selected>$i</option>\n";
else $pagecon .="<option value='$i'>$i</option>\n";
}
$pagecon .="</select> 頁,共 $lastpg 頁";

}
}else die('pageDivide()同名函數已經存在!');
?>

您可能感興趣的文章:
入門級PHP簡單分頁代碼
PHP分頁代碼詳解(附實例)
php簡單分頁代碼一例
帶多種分頁方式的php分頁類
一個好用的php分頁類
簡單的php分頁代碼的例子
一個實用的php分頁類
一個快速好用的php分頁類


PHP 分頁代碼

我給你一個類吧,很簡單的,
<?php
//分頁函數
class pg{
function genpage(&$sql,$page_size=2)
{
global $prepage,$nextpage,$pages,$sums; //out param
$page = $_GET["page"];
$eachpage = $page_size;
$pagesql = strstr($sql," from ");
$pagesql = "select count(*) as ids ".$pagesql;
$result = mysql_query($pagesql) or die(mysql_error());
if($rs = mysql_fetch_array($result)) $sums = $rs[0];
$pages = ceil(($sums-0.5)/$eachpage)-1;
$pages = $pages>=0?$pages:0;
$prepage = ($page>0)?$page-1:0;
$nextpage = ($page<$pages)?$page+1:$pages;
$startpos = $page*$eachpage;
$sql .=" limit $startpos,$eachpage ";
}
function showpage()
{
global $page,$pages,$prepage,$nextpage,$queryString;
$queryString=$_SERVER['QUERY_STRING'];
if(preg_match("/page/",$queryString)){
$queryString=strstr($queryString,"&");
}else {
$queryString="&".$queryString;
}

$shownum =10/2;
$startpage = ($page>=$shownum)?$page-$shownum:0;
$endpage = ($page+$shownum<=$pages)?$page+$shownum:$pages;
$xs="";
$xs.="共".($pages+1)."頁: ";
if($page>0)$xs.= "<a href=$PHP_SELF?page=0$queryString>首頁</a>";
if($startpage>0)
$xs.=" ... <b><a href=$PHP_SELF?page=".($page-$shownum*2)."$queryString>?</a>......余下全文>>
 

PHP分頁代碼

<?php
include("connection.php");
$perNumber=10; //每頁顯示的記錄數
$page=$_GET['page']; //獲得當前的頁面值
$count=mysql_query("select count(*) from user"); //獲得記錄總數
$rs=mysql_fetch_array($count);
$totalNumber=$rs[0];
$totalPage=ceil($totalNumber/$perNumber); //計算出總頁數
if (!isset($page)) {
$page=1;
} //如果沒有值,則賦值1
$startCount=($page-1)*$perNumber; //分頁開始,根據此方法計算出開始的記錄
$result=mysql_query("select * from user limit $startCount,$perNumber"); //根據前面的計算出開始的記錄和記錄數
while ($row=mysql_fetch_array($result)) {
echo "user_id:".$row[0]."<br>";
echo "username:".$row[1]."<br>"; //顯示數據庫的內容
}
if ($page != 1) { //頁數不等於1
?>
<a href="fenye.php?page=<?php echo $page - 1;?>">上一頁</a> <!--顯示上一頁-->
<?php
}
for ($i=1;$i<=$totalPage;$i++) { //循環顯示出頁面
?>
<a href="fenye.php?page=<?php echo $i;?>"><?php echo $i ;?></a>
<?php
}
if ($page<$totalPage) { //如果page小於總頁數,顯示下一頁鏈接
?>
<a href="fenye.php?page=<?php echo $page + 1;?>">下一頁</a>
<?php
}
?>
================================

這個是很簡單的..而且也寫了注釋..不知道合不合你的意..
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved