<?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. PHP-----数据类型,运算符

    文件解析流程: 基本语法: 和Javascript很像.Ps:变量名可以使用关键字,但是最好不建议使用.关于PHP和HTML的混编,写起来可能比较方便,但是不便于阅读. 数据类型: 其中的资源类型是一 ...

  2. px和em的区别(转)

    在国内网站中,包括三大门户,以及“引领”中国网站设计潮流的蓝色理想,ChinaUI等都是使用了px作为字体单位.只有百度好歹做了个可调的表率.而 在大洋彼岸,几乎所有的主流站点都使用em作为字体单位, ...

  3. viewport和media query

    viewport: 你可以定义viewport的宽度.如果你不使用width=device-width,在移动端上你的页面延伸会超过视窗布局的宽度(width=980px),如果你使用了width=d ...

  4. jquery mobile的事件

    有个问题困扰了我两天,知道今天才解决. 那就是page的pagecreate事件,只调用一次 如果想随时更新,就要调用pageshow事件,每次都会调用, 这个事情再次告诉我,基础要扎实啊,不然会浪费 ...

  5. 做个这样的APP要多久?[转]

    这是一个“如有雷同,纯属巧合”的故事,外加一些废话,大家请勿对号入座.开始了…… 我有些尴尬地拿着水杯,正对面坐着来访的王总,他是在别处打拼的人,这几年据说收获颇丰,见移动互联网如火如荼,自然也想着要 ...

  6. STM32上移植ds1307笔记

    PS:网上关于ds1307的资料最多还是基于51等单片机的,和stm32上还是略有差别,代码是参考了http://www.openedv.com/posts/list/20167.htm 但是他的代码 ...

  7. CentOS 6.x 一键安装PPTP VPN脚本

    环境 CentOS 6.x 32位/64位XEN/KVM/OpenVZ 步骤 依次运行下列命令 #wget http://www.hi-vps.com/shell/vpn_centos6.sh #ch ...

  8. python中requests

    #发送无参数的get请求import requests def get_html(url): res = requests.get(url) return res.text #发送无参数的post请求 ...

  9. Project中分清楚挣值项

    在项目管理非常重要的挣值管理,有一些关键项,像PV,EV,AC,BAC,EAC,ETC等等这些都是关键项,如果这个没分清楚,计算出很多东西都是错的,下面两个图是我一个项目快要完成的报表. 图1 图2 ...

  10. iOS开发UI篇—APP主流UI框架结构

    iOS开发UI篇—APP主流UI框架结构 一.简单示例 说明:使用APP主流UI框架结构完成简单的界面搭建 搭建页面效果:                                二.搭建过程和 ...