一个代码页的链接: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">
&nbsp&nbsp&nbsp你开心,我也开心

108)PHP分页显示的更多相关文章

  1. C#关于分页显示

    ---<PS:本人菜鸟,大手子还请高台贵手> 以下是我今天在做分页时所遇到的一个分页显示问题,使用拼写SQL的方式写的,同类型可参考哦~ ------------------------- ...

  2. 多页的TIFF图片在aspx页面分页显示

    一.逻辑实现:将数据库中的二进制TIFF图片读出并分页显示在页面上. 1.显示界面 public FrameDimension MyGuid; ; ; public static MemoryStre ...

  3. asp.net gridview 分页显示不出来的问题

    使用gridview分页显示,在点击第二页的时候显示空白,无数据. 原因是页面刷新,绑定datatable未执行 解决方法: 1.将datatable设置为静态 2.在OnPageIndexChang ...

  4. SSRS(rdl报表)分页显示表头和对表头的冻结处理

    基础环境 最近在公司做西门子某系统的二次开发,需要用到SQLServer Reporting Services(SSRS).我们用的SQL版本是SQLServer 2008 R2:在设计报表时,表格用 ...

  5. JSP分页显示实例(基于Bootstrap)

    首先介绍一款简单利落的分页显示利器:bootstrap-paginator 效果截图: GitHub官方下载地址:https://github.com/lyonlai/bootstrap-pagina ...

  6. scroll事件实现监控滚动条并分页显示示例(zepto.js)

    scroll事件实现监控滚动条并分页显示示例(zepto.js  ) 需求:在APP落地页上的底部位置显示此前其他用户的购买记录,要求此div盒子只显示3条半,但一页有10条,div内的滑动条滑到一页 ...

  7. 如何对sharepoint图片库的文件夹的图片按照时间排序并分页显示

    /// <summary> /// 获取图片库第一层文件夹--根据文件夹名称排序 /// </summary> /// <param name="siteUrl ...

  8. php中关于 left join 的分页显示

    /* * 统计商机搜索总条数信息 * ftt * 2015-11-10 10:13:15 */ public function getBusinessCount($btype='',$buname=' ...

  9. 《ASP.NET1200例》<asp:DataList>分页显示图片

    aspx页面代码 <asp:DataList ID="dlPhoto" runat="server" Height="137px" W ...

随机推荐

  1. 2020/2/2 PHP代码审计之反序列化

    0x00 序列化与反序列化 序列化: serialize()把对象转换为字节序列的过程称为对象的序列化 反序列化: unserialize()把字节序列恢复为对象的过程称为对象的反序列化 0x01 序 ...

  2. Java实用小工具

    工具一:对Java中的List<Map<String,Object>>格式数据实现递归 /** * 递归List<Map<String,Object>> ...

  3. HTML-基础标记

    HTML, 一种超文本标记语言,顾名思义,要比文本的样式多,而且是由标记组成,还是一门语言. 标记写法 <标记名> <a></a>双标记 超链接 <br /& ...

  4. C#调用C++系列一:简单传值

    因为去实习的时候有一个小任务是C#想调用C++ opencv实现的一些处理,那我主要的想法就是将C++实现的OpenCV处理封装成dll库供C#调用,这里面还会涉及到一些托管和非托管的概念,我暂时的做 ...

  5. {转} 深入理解 HTTP Session

    session在web开发中是一个非常重要的概念,这个概念很抽象,很难定义,也是最让人迷惑的一个名词,也是最多被滥用的名字之一,在不同的场合,session一次的含义也很不相同.这里只探讨HTTP S ...

  6. CSS(2)之重新认识 CSS3 新特性

    CSS3选择器(全) 相邻兄弟选择器:+ 选择到紧随目标元素后的第一个元素 普通兄弟选择器:~ 选择到紧随其后的所有兄弟元素 伪类选择器 :link :visited :hover :active : ...

  7. Bugku 加密(持续更新)

    1.滴答~滴 不多说,摩斯密码解密. 2.聪明的小羊 栅栏密码解密. 3.ok Ook解密 4.这不是摩斯密码 brainfuck解码 5.简单加密 凯撒有两种编码脚本,一种是字母26内循环移位,一种 ...

  8. (递归)P1036 选数

    #include<stdio.h>#include<math.h>int x[20],n,k,i; //判断是否质数 int isprime(int n){    for(i= ...

  9. AXURE方便的功能

    (1)建立一个公共的页面,可以把一些常用的组建放进去,就和代码要封装方法一样,这样省区了用到一次画一次的麻烦. 其中可以包括:弹出框.图标.搜索框之类的. 当然还可以把经常用到的 登陆.注册.忘记密码 ...

  10. ZJNU 2340/2341/2343 - 罗小黑的“礼物”Ⅰ/Ⅱ/Ⅲ

    把一位数.两位数.三位数……这些所在的范围分开判断 可得1~9这些数范围在[1,9]内 10~99内共有90个数,每个数占两位,所以共有180位在,范围在[10,189]内 同理,100~999内共有 ...