无JS,完全php面向过程数据分页实现代码

代码如下:

<?php
//登陆页面设置的session,当session中存在name时
//session_start();
//$name = $_SESSION['name'];
//if (empty($name)){
// header("Location: error.php");
// exit();
//}
//面向过程, 数据分页显示
if(false!=($mysql = mysql_connect('本地mysql', 'mysql用户名', 'mysql密码'))){
mysql_query('set names utf8',$mysql); //设置数据库中的编码
mysql_select_db("数据库database",$mysql);
}else{
die("连接失败");
}

$pageSize = 10; //页面显示条数
$rowCount = 0; //数据总条数,从数据库获得

$sqlCount = 'select count(id) from employee';
$res1 = mysql_query($sqlCount,$mysql);

//取出数据条数
if(false!=($row=mysql_fetch_row($res1))){
$rowCount = $row[0];
}

//总页数,通过计算得到
$pageCount = 0;
$pageCount = ceil($rowCount/$pageSize);

//获取当前页
if(!isset($_GET['pageNow'])){ // 当 get/post都为空的时候赋默认值1
$pageNow = 1; //当前页数
}elseif(false!=is_numeric($_GET['pageNow']) && $_GET['pageNow']<=$pageCount){
$pageNow = $_GET['pageNow'];
}else{
header("Location: ../Error/error.php");
exit();
}
//打印分页数据
echo "<div style='margin-left:300px;margin-top:1px;'>";
echo "<table style='border:1px;border-style:solid;border-width:1px;border-color:green'>";
echo "<tr><th>id</th> <th>name</th> <th>age</th> <th>sex</th> <th>birthday</th> <th>编辑雇员</th> <th>删除雇员</th> </tr>";
$sqList = "select id,name,age,sex,birthday from employee limit ".($pageNow-1)*$pageSize.",".$pageSize;
$res2 = mysql_query($sqList,$mysql);
while (false!=($row=mysql_fetch_assoc($res2))){
echo "<tr><td>{$row['id']}</td> <td>{$row['name']}</td> <td>{$row['age']}</td> <td>{$row['sex']}</td> <td>{$row['birthday']}</td> <td><a href=#>编辑</a></td> <td><a href=#>删除</a></td></tr>";
}
echo "</table>";
//表单控制显示页数
echo "<form action='当前页'>";
//上一页按钮
if($pageNow>1){
$pageUp = $pageNow-1;
echo "<a href='?pageNow=".$pageUp."'>上一页</a> ";
}

//下一页按钮
if($pageNow<$pageCount){
$pageDown = $pageNow+1;
echo "<a href='?pageNow=".$pageDown."'>下一页</a> <br/>";
}

//后退十页按钮
if($pageNow-10>0){
echo "<a href='?pageNow=".($pageNow-10)."'><<<</a> ";
}

//向本页传递当前显示的页数,并显示第几页按钮
for($i=1;$i<=$pageCount;$i++){

if($i>$pageNow-2 && $i<$pageNow+6){
if($i!=$pageNow){
echo "<a href='?pageNow=".$i."'>第".$i."页</a> ";
}
}
}

//前进十页
if($pageNow+10<=$pageCount){
echo "<a href='?pageNow=".($pageNow+10)."'>>>></a> ";
}

//显示当前页与总页数
echo "<br/>当前页".$pageNow."页/共".$pageCount."页";

//跳转页
echo "跳转到:<input type='text' name='pageNow' id='pageNow' style='width:30px;height:20px'/>页<input type='submit' style='width:37px;height:20px;font-size:11px;' value='go'/>";
echo "</form>";
echo "</div>";
?>

(0)

相关推荐

  • PHP 面向对象程序设计(oop)学习笔记 (五) - PHP 命名空间

    命名空间概述 在PHP中,命名空间用来解决在编写类库或应用程序时创建可重用的代码如类或函数时碰到的两类问题: 用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突.为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性.PHP 命名空间提供了一种将相关的类.函数和常量组合到一起的途径.下面是一个说明 PHP 命名空间语法的示例: 定义命名空间 虽然任意合法的PHP代码都可以包含在命名空间中,但只有三种类型的代码受命名空间的

  • PHP 面向对象程序设计(oop)学习笔记(一) - 抽象类、对象接口、instanceof 和契约式编程

    1.PHP中的抽象类 PHP 5 支持抽象类和抽象方法.定义为抽象的类不能被实例化.任何一个类,如果它里面至少有一个方法是被声明为抽象的,那么这个类就必须被声明为抽象的.被定义为抽象的方法只是声明了其调用方式(参数),不能定义其具体的功能实现.在类的声明中使用 abstract 修饰符可以将某个类声明为抽象的. 可以这样理解,抽象类作为一个基类,它把特定的细节留给继承者来实现.通过抽象概念,可以在开发项目中创建扩展性很好的架构. 复制代码 代码如下: abstract class Abstrac

  • php面向对象中的魔术方法中文说明

    1.__construct() 实例化对象是被自动调用.当__construct和以类名为函数名的函数 同时存在时调用__construct,另一个不背调用. 类名为函数名的函数为老版的构造函数. 2.__destruct() 当删除一个对象或一个对象操作结束是被调用. 3.__call() 对象调用某个方法.若方法不存在,这调用__call 这个方法 4.__get() 读取一个对象属性,如果对象属性是私有的会调用它 5.__set() 给一个对象属性赋值时如果属性是私有的会调用它 6.__t

  • PHP面向对象之旅:深入理解static变量与方法

    static关键字声明一个属性或方法是和类相关的,而不是和类的某个特定的实例相关,因此,这类属性或方法也称为"类属性"或"类方法". 如果访问控制权限允许,可不必创建该类对象而直接使用类名加两个冒号"::"调用. static关键字可以用来修饰变量.方法. 不经过实例化,就可以直接访问类中static的属性和static的方法. static 的属性和方法,只能访问static的属性和方法,不能类访问非静态的属性和方法.因为静态属性和方法被创建时

  • PHP面向对象教程之自定义类

    那怎么开始设计一个合格的类呢,一开始就写class{}的都错了,正确的是什么都不写,而是假设这个类已经存在,这个对象已经存在,各种属性方法都已经有了,在这个完全的假设下想象下这个对象应该怎么用,例如我们制作一个缩略图的类,我们希望封装成一个类,方便下次使用,我们首先需要明确对象是什么它会做什么,要制作缩略图本质操作是缩小图片并输出,这里被操作的是图片,那么对象就是图片,由于网站上的图片不是唯一的我们得告诉这是那张图片,这就可以假设下这个类已经存在,一开始就得声明是那张图片,例如$simg = n

  • php面向对象与面向过程两种方法给图片添加文字水印

    目前绝大多数PHP程序员使用面向过程的方式,因为解析WEB页面本身就非常"过程化"(从一个标签到另一个标签).在HTML中嵌入过程处理代码是很直接自然的作法,所以PHP程序员通常使用这种方式. 如果你是刚接触PHP,用面向过程的风格来书写代码很可能是你唯一的选择.但是如果你经常上PHP论坛和新闻组的话,你应该会看到有关"对象"的文章.你也可能看到过如何书写面向对象的PHP代码的教程.或者你也可能下载过一些现成的类库,并尝试着去实例化其中的对象和使用类方法--尽管你可

  • php实现图片添加水印功能

    复制代码 代码如下: <?php/** * 图片加水印(适用于png/jpg/gif格式) *  * @author flynetcn * * @param $srcImg 原图片 * @param $waterImg 水印图片 * @param $savepath 保存路径 * @param $savename 保存名字 * @param $positon 水印位置  * 1:顶部居左, 2:顶部居右, 3:居中, 4:底部局左, 5:底部居右  * @param $alpha 透明度 --

  • 解析php中两种缩放图片的函数,为图片添加水印

    有两种改变图像大小的方法.(1):ImageCopyResized() 函数在所有GD版本中有效,但其缩放图像的算法比较粗糙.(2):ImageCopyResampled(),其像素插值算法得到的图像边缘比较平滑.质量较好(但该函数的速度比 ImageCopyResized() 慢).两个函数的参数是一样的.如下:ImageCopyResampled(dest,src,dx,dy,sx,sy,dw,dh,sw,sh);ImageCopyResized(dest,src,dx,dy,sx,sy,d

  • 无JS,完全php面向过程数据分页实现代码

    复制代码 代码如下: <?php //登陆页面设置的session,当session中存在name时 //session_start(); //$name = $_SESSION['name']; //if (empty($name)){ // header("Location: error.php"); // exit(); //} //面向过程, 数据分页显示 if(false!=($mysql = mysql_connect('本地mysql', 'mysql用户名', '

  • js对文章内容进行分页示例代码

    Thinkphp中文章显示代码: 复制代码 代码如下: <div id="showContent">{$article.content|htmlspecialchars_decode}</div> <div id="articlePages"></div> js实现代码: 复制代码 代码如下: <script type="text/javascript"> var obj = docum

  • Ajax实现无刷新分页实例代码

    今天我们要用ajax做一个分页: 实现Ajax分页: 如果可以的话加上查询条件 找一张表做分页 分页不使用page类 页面不用刷新 Ajax加载数据 <!doctype html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>Document</title> <script src="jquery-1.11.2.

  • Bootstrap jquery.twbsPagination.js动态页码分页实例代码

    Bootstrap风格的分页控件自适应的: 参考网址:分页参考文档 1.风格样式: 2.首先引入js文件jQuery.twbsPagination.js <span style="font-size:14px;"><script type="text/javascript" src="plugins/page/jquery.twbsPagination.js"></script></span> 3.

  • 非常不错的一个JS分页效果代码,值得研究

    本来想用网上找来的分页程序,不过都得做修改,感觉麻烦了,还是自己写一个好了,以后自己用的时候修改就方便了~~大家都多动手,自己写的才是最好的,日后想干什么的,做修改也是很容易的~~顺便也扩充一下自己的代码库~~ 补充一句,cpage是页面计数,应为全局变量,这样可以随处调用它,totalpage是总页数 JS静态分页程序 a:link,a:visited,a:hover,.current,#info{ border:1px solid #DDD; background:#F2F2F2; disp

  • Mysql 如何实现多张无关联表查询数据并分页

    Mysql 多张无关联表查询数据并分页 功能需求 在三张没有主外键关联的表中取出自己想要的数据,并且分页. 数据库表结构 水果表: 坚果表: 饮料表: 数据库随便建的,重在方法. 主要使用UNION ALL 操作符 UNION ALL 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION ALL内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 SELECT 语句中的列的顺序必须相同 ; 另外,UNION ALL结果集中的列名总是等于 U

  • springboot用thymeleaf模板的paginate分页完整代码

    本文根据一个简单的user表为例,展示 springboot集成mybatis,再到前端分页完整代码(新手自学,不足之处欢迎纠正): 先看java部分 pom.xml 加入 <!--支持 Web 应用开发,包含 Tomcat 和 spring-mvc. --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web&l

  • 利用jQuery中的ajax分页实现代码

    本文实例讲解了用jQuery中的ajax分页相关代码,分享给大家供大家参考,具体内容如下 把分页封装到一个jsp里,那么大家就可以通过include的方式引入分页的页面这里起名为page_ajax.jsp 本人封装后,使用者需要在页面中引入page_ajax.jsp,并且在查询列表的时候,点击按钮,调用自定义的方法,如myFunction(),在这个方法里头,调用自己拓展的jquer方法,$.pageAjax(url,functionName,showDIv); 这里的url是你要请求的ajax

  • 基于jquery实现的表格分页实现代码

    具体代码如下: 引用js和css文件有: 复制代码 代码如下: <link ID="skin" rel="stylesheet" type="text/css" href="css/config.css"> <script type="text/javascript" src="js/config.js"></script> <script ty

  • jquery实现的伪分页效果代码

    本文实例讲述了jquery实现的伪分页效果代码.分享给大家供大家参考,具体如下: 这里介绍的jquery伪分页效果,在火狐下表现完美,IE全系列下有些问题,引入了jQuery1.7.2插件,代码里有丰富的注释,相信对学习jQuery有不小的帮助,期待大家关注. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/jquery-pic-mn-page-style-codes/ 具体代码如下: <!DOCTYPE html PUBLIC "-//W

随机推荐