mysql 查询分页详解 [Mysql相关]
文章代码:047 分享者:admin 发布时间:2009-11-21 19:54:19 人气:1517 放入书包 | 举报此信息
<?
/*
书写者:漆夜的空旷
QQ:290359552
email:yaqy@qq.com
欢
<?
/*
书写者:漆夜的空旷
QQ:290359552
email:yaqy@qq.com
欢迎拷贝.
*/
class yqrdb
{
var $conn;
function yqrdb($arr)
{
$this->conn=mysql_connect($arr["host"],$arr["username"],$arr["password"]);
mysql_select_db($arr["dbname"],$this->conn);
}
function executeQuery($sql)
{
//mysql_query("set charset utf8");
$arr=array();
$i=0;
$result=mysql_query($sql,$this->conn);
while ($row=mysql_fetch_array($result,MYSQL_BOTH)) {
$arr[$i]=$row;
$i++;
}
return $arr;
}
function executeUpdate($sql){
$result=mysql_query($sql,$this->conn);
return $result;
}
}
class yqrPage extends yqrdb
{
var $pagesize=10;
var $page=1;
var $pagecount=0;
var $recordcount=0;
function yqrPage($arr)
{
parent::yqrdb($arr);
}
function recordcount($sql)
{
$arr=$this->executeQuery($sql);
return $arr[0][0];
}
function showPage($page,$sql_count,$sql,$pagesize)
{
$this->page=$page;
$this->pagesize=$pagesize;
$this->recordcount=$this->recordcount($sql_count);
$this->pagecount=ceil($this->recordcount/$pagesize);
$start=$pagesize*($page-1);
$arr=$this->executeQuery($sql." limit $start,$pagesize");
return $arr;
}
function pageBar()
{
if($this->page-1>0)
{
$prev=$this->page-1;
}else{
$prev=1;
}
if(($this->page+1)<$this->pagecount)
{
$Next=$this->page+1;
}else{
$Next=$this->pagecount;
}
$arr=array(
'First'=>1,
'Prev'=>$prev,
'Next'=>$Next,
'Last'=>$this->pagecount,
'pagesize'=>$this->pagesize,
'pagecount'=>$this->pagecount,
'page'=>$this->page
);
return $arr;
}
}
//test
/*
require_once("../config/config.php");
$mydb=new yqrdb($config_db); //$config_db是一个一维数组
//$r=$mydb->executeUpdate("insert into shopinfo(shopname) values('ddd')");
$arr=$mydb->executeQuery("select * from category2");
print_r($arr);
*/
?>