繁体中文
设为首页
加入收藏
当前位置:PHP技术首页 >> 其它文章 >> 自己写一个分页显示的类

自己写一个分页显示的类

2004-10-01 08:26:10  作者:  来源:互联网  浏览次数:176  文字大小:【】【】【
简介:class.php: <? /* ----------------------------------------------------------------------------------------------- 名称:TurnPage 作用:分页显示 成员函数: Entrance():类的入口,参数是所有...
关键字:自己 一个

class.php:

/*

-----------------------------------------------------------------------------------------------

名称:TurnPage

作用:分页显示

成员函数:

Entrance():类的入口,参数是所有成员函数的参数

SelectData($connection,$query):选择数据的函数,返回一个数组

ShowData($array,$i,$j):显示各个字段值的函数,返回一个值

MakeTable($array,$intPageBegin,$intPageEnd):生成表格的函数,根据要显示的字段的个数生成相应的表格,参数分别是:数组,每页开始的信息序号,每页结束的信息序号

MakeLink($parameter=null):显示翻页的链接,参数可选

GetFileName(): 取出当前执行文件名字,返回文件名

函数之间的关系:

-----------------------------------------------------------------------------------------------

*/

class TurnPage

{

var $strArray;

var $cols;

var $rows;

var $strFieldName;

var $intPageBegin;

var $intPageEnd;

function Entrance($connection,$query)

{

$myArray=$this->SelectData($connection,$query);

$this->GetFileName();

$this->MakeLink($parameter=null);

$this->MakeTable($myArray,$this->intPageBegin,$this->intPageEnd);

}

function SelectData($connection,$query)

{

$result=@mysql_query($query,$connection) or die("unable to select the data!");

$intFieldsNum=mysql_num_fields($result);

for($a=0;$a<$intFieldsNum;$a++) //取得选择的各个字段的名字

{

$this->strFieldName[$a]=mysql_field_name($result,$a);

}

$this->cols=$intFieldsNum;

$count=0;

while($rows=mysql_fetch_row($result))

{

for($i=0;$i<$intFieldsNum;$i++)

{

$data[$count][$i]=trim($rows[$i]);

}

$count++;

}

$this->rows=count($data);

$this->strArray=$data;

return $this->strArray;

}

function ShowData($array,$i,$j)

{

return $array[$i][$j];

}

function MakeTable($array,$intPageBegin,$intPageEnd)

{

echo "";

echo "

";

for($m=0;$m<$this->cols;$m++)

{

echo "

";

}

echo "

";

for($i=$intPageBegin;$i<$intPageEnd;$i++)

{

if ($i%2==0)

{

$bgColor="#D2F0FF";

}

else

{

$bgColor="#ffffff";

}

echo "

";

for($j=0;$j<$this->cols;$j++)

{

echo "

";

}

echo "

";

}

echo "

".$this->strFieldName[$m]."
".$this->ShowData($array,$i,$j)."
";

}

function GetFileName()

{

$strPath=$_SERVER['PHP_SELF'];

$strFileName=trim(substr($strPath,(strrpos($strPath,"/")+1)));

return $strFileName;

}

function MakeLink($parameter=null)

{

if($parameter==null)

{

$strParam=null;

}

else

{

$strParam=$parameter;

}

if($_GET["intPage"]==null)

{

$intPage=1;

}

else

{

$intPage=trim($_GET['intPage']);

}

$intPerPage=10;

$total=$this->rows;

$strFile=$this->GetFileName();

$intPageBegin=$intPerPage*$intPage-$intPerPage;

$this->intPageBegin=$intPageBegin;

if ($intPage*$intPerPage<$total)

{

$intPageEnd=$intPageBegin+$intPerPage;

}

else

{

$intPageEnd=$total;

}

$this->intPageEnd=$intPageEnd;

echo "
信息总数:".$this->rows." ";

if($intPage>1)

{

echo "上一页";

}

echo "

";

if ($intPage*$intPerPage<$total)

{

echo "下一页";

}

echo "

";

}

}

?>

test.php:

include("../common/connection.php"); //连接数据库的操作

include("../common/class.php"); //把上面的文件包含近来

$query="select * from uphoto order by intUID asc";

$test=new TurnPage;

$test->Entrance($connection,$query);

?>

责任编辑:admin
相关文章