<?php
   class page
   {
      var $table;
      var $pagesize;
      var $totalsize;
      var $totalpage;
      var $first;
      var $page;
      var $provepage;
      var $nextpage;
      function __construct($table,$pagesize)
      {
          $conn=mysql_connect("localhost","root","123456");
          mysql_select_db("baonier");
          $this->table=$table;
          $this->pagesize=$pagesize;
          $sql="select * from ".$this->table."";
          $query=mysql_query($sql);
          $num=mysql_num_rows($query);
          $this->page=isset($_GET['page'])?$_GET['page']:1;
          $this->totalsize=$num;
          $this->totalpage=ceil(($this->totalsize)/($this->pagesize));
          $this->first=($this->pagesize)*($this->page-1);
          $this->provepage=$this->page-1;
          $this->nextpage=$this->page+1;
          
      }
      function get_rows()
      {
          $sqls="select * from ".$this->table." limit ".$this->first.",".$this->pagesize."";  
          $querys=mysql_query($sqls);
          $dates=Array();
          while($rows=mysql_fetch_array($querys))
          {
               $dates[]=$rows;
          }
          //print_r($dates);exit;
          return $dates;
      }
      function get_page()
      {
          if($this->provepage<1){
             $this->provepage=1;
          }
          if($this->nextpage>$this->totalpage){
             $this->nextpage=$this->totalpage;
          }
         $div="<a href=\"?page=1\">首页</a>&nbsp;&nbsp;&nbsp;&nbsp;
         <a href=\"?page=$this->provepage\">上一页</a>&nbsp;&nbsp;&nbsp;&nbsp;
         <a href=\"?page=$this->nextpage\">下一页</a>&nbsp;&nbsp;&nbsp;&nbsp;
         <a href=\"?page=$this->totalpage\">尾页</a>";
         return $div;
      }
   }
?>

<style  type="text/css">
.td{ text-align:center;padding-left:20px;padding-right:20px;}
</style>
<html>
   <body>
     <table style="background-color:#fcc">
      <tr>
         <td class="td">编号</td>
         <td class="td">标题</td>
         <td class="td">作者</td>
         <td class="td">时间</td>
         <td class="td">内容</td>
     </tr>
<?php
   include "page.php";
   $page=new page("news",5);
   $arr=$page->get_rows();
   foreach ($arr as $rows)
   {
?>
           <tr style="background-color:#ffc">
             <td class="td"><?php echo $rows['nid'] ?></td>
             <td class="td"><?php echo $rows['title'] ?></td>
             <td class="td"><?php echo $rows['author'] ?></td>
             <td class="td"><?php echo $rows['publishtime'] ?></td>
             <td class="td"><?php echo $rows['content'] ?></td>
           </tr>
     <?php   
     }
     ?>
</table>
<table>
         <tr>
         <td style="width:250px;"></td>
         <td><?php echo $page->get_page();?></td>
         <td style="width:100px;"></td>
         </tr>
     </table>
   </body>
</html>

PHP面向对象(分页)的更多相关文章

  1. OracleHelper(对增删改查分页查询操作进行了面向对象的封装,对批量增删改操作的事务封装)

    公司的一个新项目使用ASP.NET MVC开发,经理让我写个OracleHelper,我从网上找了一个比较全的OracleHelper类,缺点是查询的时候返回DataSet,数据增删改要写很多代码(当 ...

  2. 面向对象版js分页

    基于前一个js分页,我将代码改成一个面向对象版的js分页,代码如下 http://peng666.github.io/blogs/pageobj <!DOCTYPE html> <h ...

  3. PHP面向对象(OOP)----分页类

    > 同验证码类,分页也是在个人博客,论坛等网站中不可缺少的方式,通过分页可以在一个界面展示固定条数的数据,而不至于将所有数据全部罗列到一起,实现分页的原理其实就是对数据库查询输出加了一个limi ...

  4. 简单封装分页功能pageView.js

    分页是一个很简单,通用的功能.作为一个有经验的前端开发人员,有义务把代码中类似这样公共的基础性的东西抽象出来,一来是改善代码的整体质量,更重要的是为了将来做类似的功能或者类似的项目,能减少不必要的重复 ...

  5. MYSQL、PHP基础、面向对象基础简单复习总结

    一.MYSQL         1.配置MySql                 第一步安装服务器(apache).                 第二部安装MySql界面程序         2 ...

  6. Javascript面向对象特性实现封装、继承、接口详细案例——进级高手篇

    Javascript面向对象特性实现(封装.继承.接口) Javascript作为弱类型语言,和Java.php等服务端脚本语言相比,拥有极强的灵活性.对于小型的web需求,在编写javascript ...

  7. python之面向对象

    首先我们应该知道,python在设计之初就已经是一门面向对象的语言,所以说python中创建一个类和对象是很容易的. 面向对象的技术简介 类(class):用来描述具有相同的属性和方法的对象的集合.它 ...

  8. JS面向对象(1) -- 简介,入门,系统常用类,自定义类,constructor,typeof,instanceof,对象在内存中的表现形式

    相关链接: JS面向对象(1) -- 简介,入门,系统常用类,自定义类,constructor,typeof,instanceof,对象在内存中的表现形式 JS面向对象(2) -- this的使用,对 ...

  9. python基础之面向对象高级编程

    面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个"函数"供使用(可以讲多函数中公用的变量封装到对象中) ...

随机推荐

  1. ember.js学习笔记

    启动服务器 ember server 访问localhost:4200 创建新的路由:ember generate route 路由名称,运行此命令会同时创建一个/templates/.XXXhbs模 ...

  2. tomcat下iims的配置感悟

    1.没有想(意识)到清楚:resin下的web.xml 和tomcat下的web.xml是不同的. 2.对于connect读取配置文件以及连接数据库根本就没有意识. /** * 获取本系统DB配置的文 ...

  3. nginx+tomcat 配置负载均衡

    nginx 从Nginx官网下载页面(http://nginx.org/en/download.html)下载Nginx最新版本(我用的是nginx-1.8.1版本) 安装就直接把压缩包解压到一个路径 ...

  4. Evolutionary Computing: 1. Introduction

    Outline 什么是进化算法 能够解决什么样的问题 进化算法的重要组成部分 八皇后问题(实例) 1. 什么是进化算法 遗传算法(GA)是模拟生物进化过程的计算模型,是自然遗传学与计算机科学相互结合的 ...

  5. thinkphp下载远程图片到本地

    $url="http://www.test.com/test.jpg";//图片远程地址 $local="./Upload/test/test.jpg";//下 ...

  6. link和@import的区别

    link属于XHTML标签,而@import完全是css提供的一种方式:标签和css样式的区别就不说了,他们起到的作用区别不大,一般建议用link因为简单,@import会对页面载入有影响,影响性能l ...

  7. javascript中对象的深度克隆

    记录一个常见的面试题,javascript中对象的深度克隆,转载自:http://www.2cto.com/kf/201409/332955.html 今天就聊一下一个常见的笔试.面试题,js中对象的 ...

  8. iOS开发拓展篇—UIDynamic(重力行为+碰撞检测)

    iOS开发拓展篇—UIDynamic(重力行为+碰撞检测) 一.重力行为 说明:给定重力方向.加速度,让物体朝着重力方向掉落 1.方法 (1)UIGravityBehavior的初始化 - (inst ...

  9. CPU寄存器

    CPU寄存器主要的有 CS:IP这是代码段,主要是执行代码的: SS:SP这是栈段,很多时候数据都要用它, ds:si,这是一个数据段, 还有一个标志寄存器flag,中断的时候要保存它的信息,以便中断 ...

  10. 【转】jQuery异步上传文件

    用了 jQuery Form插件来解决这个问题:http://malsup.com/jquery/form/#code-samples 有没有不用该插件来实现呢? 解决方法: 可以采用HTML5,用j ...