整合了前面的PHP数据库连接类~~做成一个分页类!

不知道学PHP有没有前途~哎越写越没劲

<?php

 Class createdb    //类的开始

 {

 var $db= "localhost";//数据库地址;

 var $dbname = "root";//用户名;

 var $dbpwd = "";//密码;

 var $dbtable = "mysql";//使用的数据库

 var $conn;    //数据库连接;

 var $result;    //结果集

 var $mysql;    //执行的mysql

 var $row;     //结果集中找数据

 function createconn()   //这个类方法是开始一个conn连接,然后开始选择数据库

 {

  $this->conn = mysql_connect($this->db,$this->dbname,$this->dbpwd);

   mysql_select_db($this->dbtable,$this->conn);

 }

 function getresule() //这个是得到一个结果集

 {

  $this->result = mysql_query($this->mysql,$this->conn);

 }

 function getrow() //创建一个向前的结果集指针

 {

  $this->row = mysql_fetch_array($this->result);

  return $this->row;

 }

 function closedatabase()

 {

  mysql_close($this->conn);

 }

 }//类结束,开始调用类来读mysql数据库数据.

//调试数据库连接的代码!不需要的.

/* $bb = new createdb;  //类实例化

 $bb->createconn();// 调用类的连接

 $bb->mysql="select * from friends_conf";

 $bb->getresule(); //调用类得到结果集

 while($bb->getrow()){      //调用类创建指针向前读循环读数据,

  echo($bb->row["confname"]);

  echo($bb->row["confvalue"]);

 }*/

?>

//分页类~ 继承了上面的方法

<?php

 Class pagefy extends createdb{

  var $nametatol;    //总的记录数

  var $namemust = 1; //每一页想要显示的记录数

  var $pageall;  

  var $i = 1;

  var $m ;

  var $p = 8;  //需要显示的页码;

  var $a;

  function gettatol()   //取总的记录数方法

  { //先要连接数据库

   $this->nametatol = $this->row[0];  //总的记录数 

  }

  function getpage()  //取总页数

  {

   $this->pageall = $this->nametatol % $this->namemust;

   if($this->pageall)

   {

    $this->pageall = (int)($this->nametatol / $this->namemust) + 1;

    return  $this->a = $this->pageall ;

   }

   else

   {

    return $this->a = $this->pageall = (int)($this->nametatol / $this->namemust);

   }

  }

  function num_pl()  //页码显示

  { 

   $this->pageall = $this->pageall - ($this->pageall - $this->p);

   while($this->pageall)

   {

    echo("<a href='pagefy.php?n=$this->i'>$this->i</a>");

    echo("  ");  //想显示什么样式自己加

    $this->i++;

    $this->pageall =$this->pageall -1;

   }

  }

  function get_num_pl()   //取的LIMIT的前一个参数(开始ROW数)

  {

   $this->m = $_GET["n"] * $this->namemust - $this->namemust;

  }

  function showpage()  //显示分页的内容

  {

   $this->createconn();

   $this->mysql="select * from friends_conf limit $this->m ,$this->namemust";

   $this->getresule();

   while($this->getrow())

   {

    echo($this->row["confname"]);  //你想读出的字段,自己添加

    echo($this->row["confvalue"]);

   }

  }

  function firstpage()  //首页

  {

   echo("<a href='pagefy.php?n=1'>首页<a>");

  }

  function backpage()   //上一页

  {

   if($this->i = $_GET["n"] - 1)

   {

   echo("<a href='pagefy.php?n=$this->i'>上一页<a>"); 

   }

  } 

  function nextpage()  //下一页

  {

   $this->i = $_GET["n"] + 1;

   if($this->i <= $this->a)

   {

    echo("<a href='pagefy.php?n=$this->i'>下一页<a>");

   }

  }

  function footpage() //最后一页

  {

   echo("<a href='pagefy.php?n=$this->a'>最后一页<a>");

  } 

 }

?>

<?php  //调试部分

 $mm = new pagefy;

 $mm->createconn();

 $mm->mysql="select count(*) from friends_conf";

 $mm->getresule();

 $mm->closedatabase();

 $mm->getrow();

 $mm->gettatol();

 $mm->getpage();

 $mm->num_pl();

 $mm->get_num_pl();

 $mm->showpage();

 $mm->closedatabase();

 $mm->firstpage();

 $mm->backpage();

 $mm->nextpage();

 $mm->footpage();

?>

这个类已经调试完成!十分好用~~~~~~~~~~~~~~~~

类就是你的刀~不提前炼好,难到要等打架的时候再去炼呀!~早死人了~~

所有我一有空!就写个方面的功能类~~~~~~       

应该来说我这个类~~相对简单~~~看不懂的问~

相关推荐