108)PHP分页显示
一个代码页的链接:https://www.cnblogs.com/mmykdbc/p/6688460.html
首先一个简单的代码展示:
目录关系:
数据库表格展示:

结果展示:
然后 代码展示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>分页</title>
<?php //分页的函数
function news($pageNum = 1, $pageSize = 3)
{
$array = array();
$coon = mysqli_connect("localhost", "root",'root','test');
// limit为约束显示多少条信息,后面有两个参数,第一个为从第几个开始,第二个为长度
$rs = "select * from chengji where xuehao >='150100' and xuehao <150200 limit " . (($pageNum - 1) * $pageSize) . "," . $pageSize;
$r = mysqli_query($coon, $rs);
while ($obj = mysqli_fetch_object($r)) {
$array[] = $obj;
}
mysqli_close($coon);
return $array;
} //显示总页数的函数
function allNews()
{
$coon = mysqli_connect("localhost", "root",'root','test');
$rs = "select count(*) num from chengji"; //可以显示出总页数
$r = mysqli_query($coon, $rs);
$obj = mysqli_fetch_object($r);
mysqli_close($coon);
return $obj->num;
} @$allNum = allNews();
@$pageSize = 3; //约定没页显示几条信息
@$pageNum = empty($_GET["pageNum"])?1:$_GET["pageNum"];
@$endPage = ceil($allNum/$pageSize); //总页数
@$array = news($pageNum,$pageSize);
?>
</head>
<body> <table border="1" style="text-align: center" cellpadding="0">
<tr>
<th>学号</th>
<th>姓名</th>
<th>课程名字</th>
<th>平时成绩</th>
<th>实验</th>
<th>作业</th>
<th>期末成绩</th>
<th>总成绩</th>
</tr>
<?php
foreach($array as $key=>$values){
echo "<tr>";
echo "<td>{$values->xuehao}</td>";
echo "<td>{$values->xingming}</td>";
echo "<td>{$values->class_name}</td>";
echo "<td>{$values->pingshihcengji}</td>";
echo "<td>{$values->shiyanfenshu}</td>";
echo "<td>{$values->zuoye}</td>";
echo "<td>{$values->qimochengji}</td>";
echo "<td>{$values->zongchengji}</td>";
echo "</tr>";
}
?> </table> <div>
<a href="?pageNum=1">首页</a>
<a href="?pageNum=<?php echo $pageNum==1?1:($pageNum-1)?>">上一页</a>
<a href="?pageNum=<?php echo $pageNum==$endPage?$endPage:($pageNum+1)?>">下一页</a>
<a href="?pageNum=<?php echo $endPage?>">尾页</a> </div> </body>
</html>
在一个小的作业中的应用:
5)最大的体会就是分页显示,由于,每一次点击‘上一页’或者‘下一页’,都是页面刷新一次,使得,
我用$_POST接收的变量在第二次请求时会清空,然后点击‘上一页’或者‘下一页’就没有显示,为什么会这样?因为我的第一次显示是接着上一次查询页面的,自然我用$_POST['neirong']是有值的,
但是,我再一次刷新看这个页面,那个 $_POST['neirong']就会清空,因为此次的url请求是承接我上一次的页面请求,上一次没有向服务器提交
$_POST['neirong'],所以 没有这个值,
我后面的很多与之相关的变量就是空值,
自然,就没有数据显示。不过后来
我把第一次收到的这个$_POST['neirong']通过GET形式,
每次传给新的页面,这样$_POST['neirong']就不会丢失了。


代码展示:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="../CSS/H-ui.min.css"/>
<link rel="stylesheet" type="text/css" href="../CSS/H-ui.admin.css"/>
<link rel="stylesheet" type="text/css" href="../CSS/iconfont.css"/>
<link rel="stylesheet" type="text/css" href="../CSS/skin.css" id="skin"/>
<link rel="stylesheet" type="text/css" href="../CSS/style.css"/>
<title>哈尔滨理工大学成绩处理页面</title>
<?php
session_start();
$user=$_SESSION['user'];
include '../PHP/db.php'; if(is_null($_POST['banji']))
{
$banji=$_GET['banji'];
}
else{
$banji=$_POST['banji'];
}
$number=(int) $banji[0]*100000; $number=$number+(int) $banji[1]*10000; $number=(int) $banji[5]*100+$number;
// echo $number; if($number==150100)
{
$string="15级1班";
}
if($number==150200)
{
$string="15级2班";
}
if($number==150600)
{
$string="15级6班";
}
if($number==150700)
{
$string="15级7班";
}
$numberber=$number+100;
/**
* 分页的函数
*/
function news($pageNum = 1, $pageSize = 5,$number)
{
$array = array();
$numberber=$number+100;
$coon = mysqli_connect("localhost", "root",'root','test');
// limit为约束显示多少条信息,后面有两个参数,第一个为从第几个开始,第二个为长度
$rs = "select * from chengji where xuehao >=$number and xuehao <$numberber limit " . (($pageNum - 1) * $pageSize) . "," . $pageSize;
$r = mysqli_query($coon, $rs);
while ($obj = mysqli_fetch_object($r)) {
$array[] = $obj;
}
mysqli_close($coon);
return $array;
} //显示总页数的函数
function allNews()
{
$coon = mysqli_connect("localhost", "root",'root','test');
$rs = "select count(*) num from chengji"; //可以显示出总页数
$r = mysqli_query($coon, $rs);
$obj = mysqli_fetch_object($r);
mysqli_close($coon);
return $obj->num;
}
//
$allNum = allNews();
$pageSize = 5; //约定没页显示几条信息
$pageNum = empty($_GET["pageNum"])?1:$_GET["pageNum"];
$endPage = ceil($allNum/$pageSize); //总页数
$array = news($pageNum,$pageSize,$number);
?>
</head>
<body>
<header class="navbar-wrapper">
<div class="navbar navbar-fixed-top">
<div class="container-fluid cl">
<a class="logo navbar-logo f-l mr-10 hidden-xs" href="/aboutHui.shtml">成绩处理界面</a>
<nav class="nav navbar-nav">
<ul class="cl">
<li class="dropDown dropDown_hover">
<a href="javascript:;" class="dropDown_A">
   你开心,我也开心108)PHP分页显示的更多相关文章
- C#关于分页显示
---<PS:本人菜鸟,大手子还请高台贵手> 以下是我今天在做分页时所遇到的一个分页显示问题,使用拼写SQL的方式写的,同类型可参考哦~ ------------------------- ...
- 多页的TIFF图片在aspx页面分页显示
一.逻辑实现:将数据库中的二进制TIFF图片读出并分页显示在页面上. 1.显示界面 public FrameDimension MyGuid; ; ; public static MemoryStre ...
- asp.net gridview 分页显示不出来的问题
使用gridview分页显示,在点击第二页的时候显示空白,无数据. 原因是页面刷新,绑定datatable未执行 解决方法: 1.将datatable设置为静态 2.在OnPageIndexChang ...
- SSRS(rdl报表)分页显示表头和对表头的冻结处理
基础环境 最近在公司做西门子某系统的二次开发,需要用到SQLServer Reporting Services(SSRS).我们用的SQL版本是SQLServer 2008 R2:在设计报表时,表格用 ...
- JSP分页显示实例(基于Bootstrap)
首先介绍一款简单利落的分页显示利器:bootstrap-paginator 效果截图: GitHub官方下载地址:https://github.com/lyonlai/bootstrap-pagina ...
- scroll事件实现监控滚动条并分页显示示例(zepto.js)
scroll事件实现监控滚动条并分页显示示例(zepto.js ) 需求:在APP落地页上的底部位置显示此前其他用户的购买记录,要求此div盒子只显示3条半,但一页有10条,div内的滑动条滑到一页 ...
- 如何对sharepoint图片库的文件夹的图片按照时间排序并分页显示
/// <summary> /// 获取图片库第一层文件夹--根据文件夹名称排序 /// </summary> /// <param name="siteUrl ...
- php中关于 left join 的分页显示
/* * 统计商机搜索总条数信息 * ftt * 2015-11-10 10:13:15 */ public function getBusinessCount($btype='',$buname=' ...
- 《ASP.NET1200例》<asp:DataList>分页显示图片
aspx页面代码 <asp:DataList ID="dlPhoto" runat="server" Height="137px" W ...
随机推荐
- Java查漏补缺(3)(面向对象相关)
Java查漏补缺(3) 继承·抽象类·接口·静态·权限 相关 this与super关键字 this的作用: 调用成员变量(可以用来区分局部变量和成员变量) 调用本类其他成员方法 调用构造方法(需要在方 ...
- POJ 1731:Orders
Orders Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 9940 Accepted: 6048 Descriptio ...
- zabbix监控一个机器上的多个java进程的jvm
一.监控安装部署 1.1 JVM端口配置 (/bqhexin/tomcat/bin/catalina.sh)在安装的tomcat路径,找到catalina.sh文件. vim编辑并添加: catali ...
- centos6-7 yum安装php的方法
1.检查当前安装的PHP包 yum list installed | grep php 如果有安装的PHP包,先删除他们 yum remove php.x86_64 php-cli.x86_64 ph ...
- maven项目集成Quartz定时任务框架,实现批处理功能
一.Quartz简介 主要做定时任务,即:在指定时间点或时间段,执行某项任务,可设置执行次数.时间间隔等. 二.Springcloud简介 对比传统的.庞大的.复杂的.以ssm或ssh为框架的web项 ...
- 吴裕雄--天生自然MySQL学习笔记:MySQL 排序
从 MySQL 表中使用 SQL SELECT 语句来读取数据. 如果我们需要对读取的数据进行排序,我们就可以使用 MySQL 的 ORDER BY 子句来设定你想按哪个字段哪种方式来进行排序,再返回 ...
- 【PS学习成果】手持雷电
结合网上的教程和素材,试试水. 备注申明:图片和教程 均来自网络PS家园网(www.psjia.com),如有侵权,请联系本人,马上删除.
- Dynamics CRM - 在 Dynamics CRM 开发中创建一个 Entity 对象
在 Dynamics CRM 的开发中,我们时不时需要创建 Entity 对象,而对于如何创建 Entity 对象,在 C# plugin 和 JS 的写法存在些许差异. 一.C# Plugin 创建 ...
- 申请FreeDomain,透过DNS转回自己的Godaddy Cpanel
148.66.136.216这个IP,是我的Cpanel IP. 过了几分钟,这个kkchan.tk就转到Cpanel了. 然后在Cpanel的Addon Domains加上kkchan.tk,那就可 ...
- dp--01背包--Charm Bracelet
Charm Bracelet Bessie has gone to the mall's jewelry store and spies a charm bracelet. Of course, sh ...