Copy code The code is as follows:
/*
* Created on 2007-6-8
* Programmer: Alan, Msn - haowubai@hotmail.com
* PHP100.com Develop a project PHP - MySQL - Apache
* Window - Preferences - PHPeclipse - PHP - Code Templates
*/
//In order to avoid errors caused by repeated inclusion of files, a condition is added to determine whether the function exists:
if(!function_exists(pageft)) {
//Define the function pageft(), the meanings of the three parameters are:
//$totle: the total number of information;
//$displaypg: the number of information displayed on each page, the default setting here is 20;
//$url : The links in the paging navigation are the same as this URL except for adding different query information "page".
// The default value should be set to the URL of this page (i.e. $_SERVER["REQUEST_URI"]), but the right side of the default value can only be a constant, so the default value is set to an empty string, and then set to URL of this page.
function pageft($totle,$displaypg=20,$url=''){
//Define several global variables:
//$page: current page number;
//$firstcount: start of (database) query Item;
//$pagenav: page navigation bar code, it is not output inside the function;
//$_SERVER: necessary to read the URL "$_SERVER["REQUEST_URI"]" of this page.
global $page,$firstcount,$pagenav,$_SERVER;
//In order to make "$displaypg" here accessible from outside the function, set it as a global variable. Note that after a variable is redefined as a global variable, the original value is overwritten, so reassign it here.
$GLOBALS["displaypg"]=$displaypg;
if(!$page) $page=1;
//If $url uses the default value, which is an empty value, the value is assigned to the URL of this page:
if(!$url ){ $url=$_SERVER["REQUEST_URI"];}
//URL analysis:
$parse_url=parse_url($url);
$url_query=$parse_url["query"]; //Separately extract the query words of the URL String
if($url_query){
//Because the URL may contain page number information, we need to remove it in order to add new page number information.
//Regular expressions are used here, please refer to "Regular Expressions in PHP"
$url_query=ereg_replace("(^|&)page=$page","",$url_query);
//Will be processed Replace the query string of the original URL with the query string of the latter URL:
$url=str_replace($parse_url["query"],$url_query,$url);
//Add page query information after the URL, but wait Assignment:
if($url_query) $url.="&page"; else $url.="page";
}else {
$url.="?page";
}
//Page number calculation:
$lastpg =ceil($totle/$displaypg); //The last page, also the total number of pages
$page=min($lastpg,$page);
$prepg=$page-1; //Previous page
$nextpg= ($page==$lastpg ? 0 : $page+1); //Next page
$firstcount=($page-1)*$displaypg;
//Start paging navigation bar code:
$pagenav="display No.".($totle?($firstcount+1):0)."-".min($firstcount+$displaypg,$totle)."//If there is only one page, jump out of the function:
if($lastpg<=1) return false;
$pagenav.=" Homepage ";
if($prepg) $pagenav.=" Previous page "; else $pagenav.= " Previous page";
if($nextpg) $pagenav.=" Next page "; else $pagenav.=" Next page";
$pagenav.=" Last page ";
//Drop down jump list, loop through all page numbers:
$pagenav.=" Go to page page, total $lastpg page";
}
}
?>
/*
//(the previous procedure is omitted)
include("pageft .php"); //Contains "pageft.php" file
//Get the total number of information
$result=mysql_query("select * from mytable");
$total=mysql_num_rows($result);
//Call pageft (), display 10 pieces of information per page (when using the default 20, you can omit this parameter), use this page URL (default, so omit it).
pageft($total,10);
//The global variables generated now come in handy:
$result=mysql_query("select * from mytable limit $firstcount,$displaypg ");
while($row=mysql_fetch_array ($result)){
//(List content omitted)
}
//Output paging navigation bar code:
echo $pagenav;
//(Following procedure omitted)
*/
?>
The above introduces the phison-up10 mass production tool v1.78.00, a very good PHP page turning class, including the content of phison-up10 mass production tool v1.78.00. I hope it will be helpful to friends who are interested in PHP tutorials.