使用面向对象来写的分页[希望大家能给点意见]
DBHelper.php-----------------------------------------------------------------------
<?php
//定义一个链接类
class Connection
{
public $strConn="";
public function Conn() //链接数据库方法
{
$this->strConn=mysql_connect("localhost","root","123");
mysql_select_db("db_database19",$this->strConn);
mysql_query("set names GB2312");
}
}
?>
index.php
------------------------------------------------------------------------
<?php
include 'DBHelper.php'; //调用数据库连接类包
class page //定义分页类
{
public function ChangePage($myPage) //定义一个分页方法,当前页数的形参$myPage
{
$conn=new Connection();
$conn->Conn();
//调用数据库连接类
$page=$myPage;
if(is_numeric($page))
{
$offerPage=($page-1)*4; //判断当前页从第几条数据开始读取
$sql=mysql_query("select bigclass from tb_object limit $offerPage,4",$conn->strConn);
$row=mysql_fetch_object($sql);
do {
echo $row->bigclass."<br/>";
}while ($row=mysql_fetch_object($sql));
}
mysql_free_result($sql);
mysql_close($conn->strConn);
}
}
if ($_GET['page']!="")
{
$p=new page();
$p->ChangePage($_GET['page']);
}
else //初始化页面的数据,首页显示四行数据
{
$p=new page();
$p->ChangePage(1);
}
?>
<?php echo "<br/><br/>"; ?>
<?php
class PageSum
{
public function DataCount()
{
$conn=new Connection();
$conn->Conn();
//调用数据库连接类
$sqlQuery=mysql_query("select * from tb_object",$conn->strConn);
$sum=mysql_num_rows($sqlQuery); //统计当前表中有几行数据
mysql_close($conn->strConn);
return $this->countPages=ceil($sum/4); //返回一个整数,计算需要多少页来容纳当前表中数据
}
}
$p2=new PageSum();
$count=$p2->DataCount();
//使用for循环,输出超级链接
for ($i = 1; $i <= $count; $i++) {
echo "<a href=index.php?page=".$i.">第 $i 页</a> ";
}
?>