欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

很经典的分页程序,该如何处理

程序员文章站 2022-05-14 14:55:01
...
很经典的分页程序
Conn.php

header("Content-Type:text/html;charset=utf-8");
$conn = "";
$mysql_localhost = "localhost";
$mysql_user = "root";
$mysql_pws = "sa";
$mysql_data = "page";
/**
* 连接数据库
*/
function OpenDatabase()
{
global $mysql_localhost,$mysql_user,$mysql_pws,$mysql_data; //设置全局变量,但退出函数后值无效
$conn = @mysql_connect($mysql_localhost,$mysql_user,$mysql_pws) or die("提示:数据库连接失败!");
$GLOBALS["conn"] = $conn; //全局变量值,退出函数后值有效
mysql_query("set names 'utf-8'"); //设置编码
$db_selected = mysql_select_db($mysql_data,$conn);
}
/**
* 关闭数据库
*/
function CloseDatabase()
{
mysql_close($GLOBALS["conn"]);
}
?>
Page.php
header("Content-Type:text/html;charset=utf-8");
include("Conn.php");
OpenDatabase(); //打开数据库
//-------调用分页函数-------
$pagenav = _page_list("test",3);
//------------------------
echo $pagenav; //打印出分页返回的字符串
//------------------------显示列表-------------------
$sql = "SELECT * from test limit $firstcount,$pagesize";
$result = mysql_query($sql,$conn); //查询语句
while($row = mysql_fetch_array($result,MYSQL_NUM))
{
echo "
".$row[0]." | ".$row[1]." | ".$row[2];
}
echo "
";
mysql_free_result($result); //释放内存空间
//----------------------------------------------------
echo $pagenav; //打印出分页返回的字符串


//================================================================================
/**
* 函数名:_page_list
* 参数:$table ---- 所要查询的表名
* $page_size ---- 每页的记录数,默认一页显示20条
* 作用:分布显示所有记录
* 使用方法:$pagenav = _page_list("test");
* 然后在要显示分页字符的地方打印出$pagenav
*/
function _page_list($table,$page_size=20)
{
global $firstcount,$pagenav,$page,$conn,$pagesize;
$page = $_GET[page];
$url = _get_url();

$pagesize = $page_size;
$result = mysql_query("select * from $table",$conn);
$total = mysql_num_rows($result); //总记录数
mysql_free_result($result); //释放内存空间
$lastpg = ceil($total / $pagesize); //最后一页,即总页数

$page = min($lastpg,$page); //返回其中最小的数
$prepg = ($page > 1)?$page-1:$page; //上一页
$nextpg = ($page
$firstcount = ($page-1)*$pagesize; //每页第一条记录的指针,默认从0开始
if($firstcount
$pagenav = "共 ".$lastpg." 页 ";
$pagenav .= "首页";
if($page {
$pagenav .= " 上页";
}
else
{
$pagenav .= " 上页";
}

if($page >= $lastpg)
{
$pagenav .= " 下页";
}
else
{
$pagenav .= " 下页";
}
$pagenav .= " 尾页";
$pagenav .= " 当前第 ".$page." 页";
$pagenav .= "
";
return $pagenav;
}

/**
*函数名:_get_url
*作用:返回页面完整的URL值,即从根目录起,不包含URL最后面的#fragment
*/
function _get_url()
{
global $page;
$url = $_SERVER["REQUEST_URI"]; //获取URL地址
$url_path = parse_url($url,PHP_URL_PATH); //获取文件路径
$url_query = parse_url($url,PHP_URL_QUERY); //获取URL中?号后面的信息,相当于查询字符串
echo $url;
很经典的分页程序,该如何处理

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频