php利用模板分頁程序(帶demo演示);這是一款比較經典的php分頁代碼哦,利用了程序模板,頁面分離的方式來做這個文件分頁功能,實在是太牛B了。
php教程利用模板分頁程序(帶demo演示);
這是一款比較經典的php分頁代碼哦,利用了程序模板,頁面分離的方式來做這個文件分頁功能,實在是太牛b了。
*/
//page.class.php
class page{
var $currentpage;
var $leftoffset;
var $rightoffset;
var $totalpage;//總頁數
var $recordcount;//總記錄數
var $pagesize;//每頁顯示條數
var $pageurl;
var $hypelink;
var $template;
var $tpl;
var $tagitems=array();
var $tagvalues=array();
var $sqlquery;
//構造函數
function page($currentpage=1,$pagesize=5,$leftoffset=2,$rightoffset=7,$pageurl="?page="){
echo "分頁類開始";
$this->currentpage=ceil(abs(@$currentpage+0));
(empty($this->currentpage))?$this->currentpage=1:$this->currentpage=$this->currentpage;
$this->pagesize=ceil(abs(@$pagesize+0));
(empty($this->pagesize))?$this->pagesize=5:$this->pagesize=$this->pagesize;
$this->leftoffset=ceil(abs(@$leftoffset+0));
(empty($this->leftoffset))?$this->leftoffset=2:$this->leftoffset=$this->leftoffset;
$this->rightoffset=ceil(abs(@$rightoffset+0));
(empty($this->rightoffset))?$this->rightoffset=7:$this->rightoffset=$this->rightoffset;
$this->pageurl=$pageurl;
$this->setdefaulttagvalue();
}
//取得記錄總數
//$sql="select count(id) as n from table";
function getrecordcount($sql,$conn){
$query=@mysql教程_query($sql,$conn);
if(!$query){echo "執行sql語句失敗";exit();}
while($rs=mysql_fetch_row($query)){
$this->recordcount=$rs[0];//取得記錄總數
}
$this->totalpage=ceil($this->recordcount / $this->pagesize);//計算總頁數
if($this->currentpage > $this->totalpage){$this->currentpage=$this->totalpage;}//判斷當前頁是否大於總頁數
mysql_free_result($query);
}
//select * from tb p->setlimit();
function setlimit(){
$limit="limit ".($this->currentpage-1)*$this->pagesize;
$limit.=",$this->pagesize";
return $limit;
}
function executesql($sql,$conn){
if(!$sql||!$conn){echo "參數傳遞錯誤";return false;}
$this->sqlquery=mysql_query($sql,$conn);
if(!$this->sqlquery){echo "執行sql語句失敗";return false;}
}
function recordset(){
return mysql_fetch_array($this->sqlquery);
}
//取得模板內容
function gettemplate($filedir){
if(file_exists($filedir)){
$f=fopen($filedir,"r");
$this->template=fread($f,filesize($filedir));
}else{
echo "獲取模板文件失敗...文件不存在";
exit();
}
//取得區塊內容
$start=strpos($this->template,"<!--templatebegin-->");
$end=strpos($this->template,"<!--templateend-->");
$this->tpl=substr($this->template,$start+strlen("<!--templatebegin-->"),$end-$start-strlen("<!--templateend-->")-2);
if($this->tpl==""){echo "模板內容為空,請檢查標簽設置是否正確。";exit();}
//echo $this->tpl;
}1 2 3