当前位置:编程学习 > php >>

PHP和MYSQL最简单的分页代码以及原理


给位朋友为分享和讲解一下mysql+php最简单的分页代码原理

1、SQL语句中的limit用法
SELECT * FROM table ……limit 开始位置,操作条数
SELECT * FROM table ……limit 0,20

2、学习分页的一种公式
(1)分页原理 所谓分页显示,也就是讲数据库中的结果集,一段一段显示出来
(2)需要的条件

怎么分段,当前在第几段(每页有几条,当前再第几页)
前10条记录:select * from table limit 0,10
第11至20条记录:select * from table limit 10,10
第21至30条记录:select * from table limit 20,10

(3)得到公式

(当前页数- 1)X每页条数,每页条数
Select * from table limit ($Page- 1) * $PageSize, $PageSize

3、parse_url()解析URL函数,parse_url()是将URL解析成有固定键值的数组的函数

$ua=parse_url("http://username:password@hostname/path?arg=value#anchor");
print_r($ua);
结果:
Array
(
[scheme] => http
[host] => hostname
[user] => username
[pass] => password
[path] => /path
[query] => arg=value
[fragment] => anchor
)
4、$_SERVER["REQUEST_URI"]函数
预定义服务器变量的一种,REQUEST_URI的作用是取得当前URI,也就是域名后面完整的路径
例如当前页为:http://www.zzzyk.com/spacecp.php?id=3&cid=23
echo $_SERVER["REQUEST_URI"]
结果为:/spacecp.php?id=3&cid=23

php最简单分页代码
include_once("mysql.class.php");
$pagesize = 5 ;
$url = $_SERVER["REQUEST_URI"];
$url = parse_url($url);
$url = $url[path];
//取得数据的总条数
$que = mysql_query("SELECT * FROM `test` ");
$num = mysql_num_rows($que);
//分页公式
if($_GET[page]){
$pageval = $_GET[page];
$first = ($pageval -1)*$pagesize;
$first .= ',';
}
if($num > $pagesize){
if($pageval <= 1)
$pageval = 1;
echo "共 $num 条 ">上一页 下一页";
}
echo $sql = "SELECT * FROM `test` limit $first $pagesize";
$query = mysql_query($sql);
while($row = mysql_fetch_array($query)){
echo "
".$row[name]." | ".$row[易做图];
}
?>

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,