PHP中文网上的分页代码
page.php
<html>
<head>
<meta http-equiv="CONTENT-TYPE" content="text/html;">
</head>
<title>分页</title>
<style> div.page{
text-align: center;
}
div.page a{
border: #aa0027 solid 1px;
text-decoration: none;
padding: 2px 5px 2px 5px;
margin: 2px;
}
div.page span.current{
border: #000099 1px solid;background-color: #992b6c;padding: 4px 6px 4px 6px;margin: 2px;color: #fff;
font-weight: bold;
}
div.page form{
display: inline;
}
div.content{
height: 200px;
}
</style>
<body>
<?php
error_reporting(E_ALL ^ E_DEPRECATED);
?>
<?php
/** 1.传入页面 **/
$page= isset($_GET['p']) ? trim($_GET['p']) : 1;
/** 2.根据页面取出数据:php->mysql **/
$host = "localhost";
$username = 'root';
$password = 'root';
$db = 'test'; $PageSize=5;
$ShowPage=3;
//连接数据库
$conn = mysqli_connect($host, $username, $password,$db);
if(!$conn){
echo "数据库连接失败";
exit;
} //编写sql获取分页数据:SELECT * FROM 表名 LIMIT 起始位置 , 显示条数
$sql = "SELECT*FROM user LIMIT ".($page-1)*$PageSize .",$PageSize";
if(!
$conn->query($sql)){
echo "取出不成功";
};
//把sql语句传送到数据库
$result = mysqli_query($conn,$sql);
//处理我们的数据
echo "<div class='content'>";
echo "<table border=1 cellspacing=0 width=15% align='center'>";
echo "<tr><td>ID</td><td>名字</td><td>密码</td></tr>";
while($row = mysqli_fetch_array($result)){
echo "<tr>";
echo "<td>{$row['id']}</td>";
echo "<td>{$row['name']}</td>";
echo "<td>{$row['pass']}</td>";
echo "<tr>";
}
echo "</table>";
echo "</div>";
//释放结果
mysqli_free_result($result); //获取数据总数
$to_sql="SELECT COUNT(*)FROM user";
$to_result=mysqli_fetch_array(mysqli_query($conn,$to_sql));
$to=$to_result[0];
//计算页数
$to_pages=ceil($to/$PageSize);
mysqli_close($conn); /** 3.显示数据+分页条 **/
$page_banner="<div class='page'>";
//计算偏移量
$pageffset=($ShowPage-1)/2;
if($page>1){
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=1'>首页</a>";
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=".($page-1)."'><上一页</a>";
}
//初始化数据
$start=1;
$end=$to_pages;
if ($to_pages>$ShowPage){
if($page>$pageffset+1){
$page_banner.="...";
}
if ($page>$pageffset){
$start=$page-$pageffset;
$end=$to_pages>$page+$pageffset?$page+$pageffset:$to_pages;
}else{
$start=1;
$end=$to_pages>$ShowPage?$ShowPage:$to_pages;
}
if ($page+$pageffset>$to_pages){
$start=$start-($page+$pageffset-$end);
}
}
for($i=$start;$i<=$end;$i++) {
if ($page == $i) {
$page_banner .= "<span class='current'>{$i}</span>";
} else {
$page_banner .= "<a href='" . $_SERVER['PHP_SELF'] . "?p=" . ($i) . "'>{$i}</a>";
}
}
//尾部省略
if ($to_pages>$ShowPage&&$to_pages>$page+$pageffset){
$page_banner.="...";
}
if ($page<$to_pages){
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=".($page+1)."'>下一页></a>";
$page_banner.="<a href='".$_SERVER['PHP_SELF']."?p=".($to_pages)."'>尾页</a>";
} $page_banner.="共{$to_pages}页";
$page_banner.="<form action='mupage.php' method='get'>";
$page_banner.="到第<input type='text'size='2'name='p'>页";
$page_banner.="<input type='submit'value='确定'>";
$page_banner.="</form></div>";
echo $page_banner;
?>
</body>
</html>
*
- 第一次打开是设置默认当前页为1: $page= isset($_GET['p']) ? trim($_GET['p']) : 1;
- 得到当前网址:$_SERVER['PHP_SELF']
- 当页码过多时,实现了隐藏部分页码的效果
PHP中文网上的分页代码的更多相关文章
- Oracle中经典分页代码!
在Oracle中因为没有top关键字,所以在sqlserver中的分页代码并不适用于Oracle,那么在Oracle中如何来实现分页呢? --查询所有数据 STUNO STUNAME STUAGE S ...
- 解决 git 中文路径显示 unicode 代码的问题
解决 git 中文路径显示 unicode 代码的问题 当被修改的文件中带有中文字符时,中文字符会被转换为 unicode 代码,看不出原来的文件名. 这时,只要配置 :: git config -- ...
- 纯js分页代码(简洁实用)
纯js写的分页代码. 复制代码代码如下: //每页显示字数 PageSize=5000; //分页模式 flag=2;//1:根据字数自动分页 2:根据[NextPage]分页 //默认页 start ...
- PHP分页初探 一个最简单的PHP分页代码实现
PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项. 要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7.PHP分页代码核 ...
- JAVAEE——BOS物流项目05:OCUpload、POI、pinyin4J、重构分页代码、分区添加、combobox
1 学习计划 1.实现区域导入功能 n OCUpload一键上传插件使用 n 将文件上传到Action n POI简介 n 使用POI解析Excel文件 n 完成数据库操作 n 使用pinyin4J生 ...
- PHP分页初探 一个最简单的PHP分页代码的简单实现
PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项. 要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7.PHP分页代码核 ...
- Tensorflow 免费中文视频教程,开源代码,免费书籍.
Free-Tensorflow Tensorflow 免费中文视频教程,开源代码,免费书籍. 官方教程 官方介绍 https://tensorflow.google.cn/ 安装教程 https:// ...
- Sql万能分页代码
sql数据库中常用的分页 我做了一个万能的 用的上的小伙伴拿去耍吧 go ----万能分页代码create procedure [dbo].[sp_datapager] @pagesize int, ...
- java常用公共代码二之分页代码的实现
在项目中,我们经常会写到一些公共的代码,来让开发人员调用,减少代码重复,下面,我就将一些常用到的公共类贴出来和大家分享!! 二.分页代码实现:在项目中,分页是一个项目中必不可少的,它可以防止我们从数据 ...
随机推荐
- 从Unity中的Attribute到AOP(三)
上一篇我们对系统的Attributes进行了MSIL代码的查看,了解到了其本质就是一个类的构造函数.本章我们将编写自己的Attributes. 首先我们定义书的属性代码,如下: [AttributeU ...
- 如何获取离线安装Chrome扩展程序的包
最近工作环境限制,有些机器文件只能拿进去,不能拿出来.网络也是内部网络,没法下载东西.工作中常用的一些Chrome扩展应用也没法使用,对于我这类工具爱好者,打击够大.后来想想,既然扩展应用能开发打包上 ...
- C#学习笔记-装饰模式
题目:给顾客打扮,但是需要满足正常的穿衣风格,例如先穿了衬衣再打领带,最后在穿鞋子,这种基本要求. 分析: 现在将具体的衣服裤子和鞋子都分别写在不同的类里面,这样方便以后添加新的衣服,这些全部都属于服 ...
- windbg关于.NET分析的扩展命令
收到一个dump文件,运行环境的.net framework的详细版本是多少呢? dump信息与性能计数器结合分析时,想知道该dump运行的进程号是多少? dump定位到有效的堆栈信息,而对应的源码是 ...
- python抢火车票的脚本
起因: 想着那么多人,抢不到火车票.感觉到一丝感慨 所以有了抢火车票这个脚本. 0x01 思路:自动打开浏览器,自动输入账号密码 知道查看.自动预定. 0x02 要用到的模块 splinter模块: ...
- bzoj:1687;poj 2434:[Usaco2005 Open]Navigating the City 城市交通
Description A dip in the milk market has forced the cows to move to the city. The only employment av ...
- HDU 2563 统计问题(递归,思维题)
统计问题 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- Vijos P1113 不高兴的津津【模拟】
不高兴的津津 描述 津津上初中了.妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班.另外每周妈妈还会送她去学习朗诵.舞蹈和钢琴.但是津津如果一天上课超过八个小时就会 ...
- Saving James Bond(dijk)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1245 Saving James Bond Time Limit: 6000/3000 MS (Java ...
- 通俗理解TCP握手次数是三次
理解之后,应该说是至少三次就可以保证可靠传输了. 看到网上一篇帖子http://www.cnblogs.com/TechZi/archive/2011/10/18/2216751.html是这么说的, ...