php+mysql实现分页
来源:互联网 发布:软件开发安卓 编辑:程序博客网 时间:2024/06/06 05:06
第一步:连接数据库
<?php
$link=mysqli_connect("localhost","数据库用户名","数据库密码","数据库名");
if(!$link){
die('could not connect:' .mysql_error());//连接数据库失败
}
mysqli_query($link,'set names utf8');//设置数据库编码格式
?>
OK,到这数据库就写完啦,怎么样?是不是很简单呀!下面我们继续吧
第二步:实现具体的分页功能
(1)传入页码
$page=$_GET['P'];//p为传入的页码,即要取第几页的数据
/** 初始化p值 **/
if(!isset($_GET['p'])) $_GET['p']=1;
$_GET['p']=(int)$_GET['p'];
(2)根据页码取出数据,php->mysql处理
//编写sql获取分页数据,select * from 表名 limit 起始位置,显示条数
$sql="select * from test limit".(($page-1)*$pageSize).",$pageSize";//mysql数据库中第一条数据默认从0开始。
$result=mysqli_query($link,$sql);//把sql语句传入数据库
while($row=mysqli_fetch_assoc($result))//处理我们的数据
{
?>
/**显示信息内容**/
<div class="titlebar">
<span class="shoptitle"><?php echo $row["title"]?></span>
<span class="distance">650m</span>
</div>
//释放结果,关闭连接
mysql_free_result($result);
mysql_close($link);
<?php
}
?>
(3)显示数据+分页条(其实就是一个超链接)
$page_banner="<a>上一页</a>";
$page_banner="<a>下一页</a>";
详细代码如下:
<?php
//获取数据总数
$total_sql="select COUNT(*) as num FROM practice_task";
$result=mysqli_query($link,$total_sql);
$total_result=mysqli_fetch_assoc($result);
//print_r($total_result);
$total=$total_result['num'];
//echo "总条数:".$total;
//计算页数
$total_pages=ceil($total/$pageSize);
//计算页码偏移量
$pageoffset=($showPage-1)/2;
//定义显示页码的其实位置
$start=1;
$end=$total_pages;
$page_banner="<div class='page'>";
if($page>1){
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=1'>首页</a>";
$page_banner.= "<a href='".$_SERVER['PHP_SELF']."?p=".($page-1)."'>上一页</a>";
}
if($total_pages>$showPage)
{
if($page>$pageoffset + 1){
$page_banner.="...";
}
if($page > $pageoffset){
$start=$page-$pageoffset;
$end=$total_pages>$page+$pageoffset ? $page+$pageoffset:$total_pages;
}else{
$start=1;
$end=$total_pages>$showPage ? $showPage:$total_pages;
}
if($page + $pageoffset > $total_pages){
$start=$start-($page + $pageoffset - $end);
}
}
//显示数据
for($i = $start;$i<=$end;$i++){
if($page==$i){
$page_banner.="<span class='current'>{$i}</a>";
}else{
$page_banner.= "<a href='".$_SERVER['PHP_SELF']."?p=".$i."'>$i</a>";
}
}
if($total_pages>$showPage && $total_pages>$page + $pageoffset){
$page_banner.="...";
}
if($page<$total_pages){
$page_banner.= "<a href='".$_SERVER['PHP_SELF']."?p=".($page+1)."'>下一页</a>";
$page_banner.= "<a href='".$_SERVER['PHP_SELF']."?p=".($total_pages)."'>尾页</a>";
}
$page_banner.="共{$total_pages}页";
$page_banner.="</div>";
echo "$page_banner";
效果如下:
- PHP+mysql实现分页
- MySql+PHP实现分页
- php+mysql实现分页
- php mysql分页实现代码
- PHP+MySQL分页原理实现
- PHP&MYSQL分页原理及实现
- PHP+MySQL实现分页的常用方法
- PHP+MySQL实现留言板分页功能
- php&mysql分页的实现
- 慕课网学习-- PHP+MySQL分页原理实现
- AJAX + PHP + MYSQL 实现无刷新分页
- 基于php+mysql实现分页技术
- PHP+MySQL分页示例
- php+mysql分页
- php+mysql分页公式
- PHP+MYSQL分页原理
- PHP+MYSQL分页原理
- PHP+MYSQL分页原理
- GitLab教学支持系统Android练手项目
- Python的idle清屏
- Android------git的使用
- json传出的时间戳转化为标准格式
- iOS之estimatedHeightForRowAtIndexPath
- php+mysql实现分页
- 7z命令行操作指南之最快压缩
- POJ 2812 Extrusion 笔记
- 汽车速率与燃油里程之间的关系
- Zookeeper集群安装
- 关于AS3语言Flash的Stage3D在不同的AGAL版本中寄存器的数量限制
- EMV规范(五)——脱机数据认证
- Android Studio SVN 使用方法
- sql语法请教,这一行某列的数是上一行该列,经过计算后得出来的数,语法怎么写