php分页

8/31/2015来源:PHP技巧人气:1615

php分页

<!--?php

require_once 'include/showbbsPRocess.php';

require_once 'include/showbbs_fun.php';

@$connectMySQL=new connectMysql();

if (empty($_GET['CurrentPageID'])){

$CurrentPageID=1;//当前是第几页

}else {

$CurrentPageID=$_GET['CurrentPageID'];

}

$PageSize=5;

echo showCenter($CurrentPageID, $PageSize, $connectmysql);

?-->

分页处理函数 showbbsProcess.php

?

<!--?php

function showCenter($CurrentPageID,$PageSize=5,$connectmysql){

$arr=showbbs($PageSize, $CurrentPageID, $connectmysql);

foreach ($arr as $values){

for ($i=0;$i<count($arr);$i++){

echo ''.$arr[$i]['title'].''.' '.'<span style="float:right;font-size:12px;">作者:'.$arr[$i]['poster'].' '.'发布时间:'.$arr[$i]['posted'].'</span><br><hr>';

//如果遍历完$arr数组里的所以元素,即$i($i从0开始)等于数组的元素个数减一,则跳出2层循环(for循环和foreach循环)

if ($i==(count($arr)-1))

break 2;

}

}

$RowCount=getRowCount($connectmysql);//一共有多少条记录

$PageCount=ceil($RowCount/$PageSize);//共有几页,ceil()函数进一取整

echo '帖子统计:'.$RowCount.'条'.' '.'共有'.$PageCount.'页 ';

//当为第一页时不输出“上一页”

if ($CurrentPageID != 1){

echo "上一页";

}

//向前跳页

if ($CurrentPageID > 2){

echo " <<< ";

}

//输出详细的页数,如:【1】

for ($j=1;$j<=$PageCount;$j++){

echo "[$j]";

}

//向后跳页

if ($CurrentPageID <= ($PageCount-2)){

echo " >>> ";

}

//当为最后一页时不输出“下一页”

if ($CurrentPageID != $PageCount){

echo "下一页";

}

$connectmysql->closeConn();

}

数据库沟通的函数 showbbs_fun.php

?

<!--?php

require_once '/class/connectMysql.php';

//该函数用来获取数据库中的数据并返回一个二维数组

function showbbs($PageSize,$CurrentPageID,$connectmysql){

$a=($CurrentPageID - 1)*$PageSize;

$sql="select * from db_content limit $a,$PageSize";

$arr1=$connectmysql->getRowsArray($sql);

return $arr1;

}

//该函数用来查询数据库的表的行数

function getRowCount($connectmysql){

$sql="select * from db_content";

$num=$connectmysql->getRowsNum($sql);

return $num;

}

数据库类 connectMysql.php

?

<!--?php

/***

*这个类用于处理数据库连接相关操作

*/

class connectMysql{

private $host='localhost';

private $username='root';

private $passWord='szy19900316';

private $dbname='db_caomei';

private $conn='';//数据库连接资源

private $result='';//查询的结果

private $resultArray;//将查询的结果输出为一个单条记录的数组

private $rowsArray=array();//含有多条记录的二维数组

private $rowsNum=0;//返回的结果数

function __construct(){

}

//连接数据库

function conndb(){

$this--->conn=mysql_connect($this->host,$this->username,$this->password);

@mysql_select_db($this->dbname,$this->conn);

mysql_query('set names utf-8');

}

//查询结果

function getResult($sql){

if ($this->conn==''){

$this->conndb();

}

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

}

//返回查询的记录数

function getRowsNum($sql){

$this->getResult($sql);

$num_rows=mysql_num_rows($this->result);

if (mysql_errno()==0){

return $num_rows;

}else {

return '';

}

}

//