萌萌妈妈 发表于 2015-2-4 00:09:57

PHP网站制作之本人写一个分页显示的类

怎样学习,大家都知道编程是1门很枯燥的事业,所以大家一定要有兴趣,可能刚开始打算学的时候是因为别人说php有多好,php多么流行,但是后来伴随着学习的深入,你的这些分页|显示   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 "<table border=0 width=100% align=center cellspacing=1 cellpadding=5 bgcolor=#004080>";
echo "<tr height=20 bgcolor=#0080C0 align=center>";
for($m=0;$m<$this->cols;$m++)
{
echo "<td><font color=white>".$this->strFieldName[$m]."</font></td>";
}
echo "</tr>";

for($i=$intPageBegin;$i<$intPageEnd;$i++)
{
if ($i%2==0)
{
$bgColor="#D2F0FF";
}
else
{
$bgColor="#ffffff";
}
echo "<tr bgcolor=".$bgColor." align=center onMouseOver=this.style.backgroundColor=@##FFCC66@# onMouseOut=this.style.backgroundColor=@#@# onClick=this.style.backgroundColor=@##cccccc@#>";
for($j=0;$j<$this->cols;$j++)
{
echo "<td>".$this->ShowData($array,$i,$j)."</td>";
}
echo "</tr>";
}
echo "</table>";
}

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 "<table width=100% border=0><tr><td width=60% align=left>信息总数:".$this->rows."</td><td width=20%> ";
if($intPage>1)
{
echo "<a href=".$strFile."?intPage=".($intPage-1).">上一页</a>";
}
echo "</td><td width=20%> ";
if ($intPage*$intPerPage<$total)
{
echo "<a href=".$strFile."?intPage=".($intPage+1).">下一页</a>";
}
echo "</td></tr></table>";

}

}
?>
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);

?>
没有人会喜欢和见异思迁的人交朋友,因为这种人太不安分,太不可靠,因此,你必须要强迫自己完成自己的目标,哪怕可能会很难受,也得坚持,毅力就是这么锻炼出来的。

山那边是海 发表于 2015-2-4 09:40:49

你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。

愤怒的大鸟 发表于 2015-2-4 18:48:22

本文当是我的笔记啦,遇到的问题随时填充

老尸 发表于 2015-2-10 05:19:10

首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。

因胸联盟 发表于 2015-3-3 03:07:25

遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。

变相怪杰 发表于 2015-3-7 02:33:47

作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。

若相依 发表于 2015-3-14 03:38:01

兴趣是最好的老师,百度是最好的词典。

飘飘悠悠 发表于 2015-3-20 03:37:03

如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,

简单生活 发表于 2015-3-27 14:10:05

找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。

只想知道 发表于 2015-3-31 04:04:00

装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。

小女巫 发表于 2015-4-4 11:26:14

我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。

小魔女 发表于 2015-4-5 20:36:16

我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。

透明 发表于 2015-4-12 08:16:08

多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。

飘灵儿 发表于 2015-4-13 22:53:25

刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。

再见西城 发表于 2015-4-21 20:12:09

基础有没有对学习php没有太大区别,关键是兴趣。

若天明 发表于 2015-4-22 09:16:15

写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。

admin 发表于 2015-5-1 13:11:41

先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。

第二个灵魂 发表于 2015-6-4 10:58:12

曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线\\\\\\\'_\\\\\\\' ;

萌萌妈妈 发表于 2015-6-21 19:41:45

兴趣是最好的老师,百度是最好的词典。

莫相离 发表于 2015-6-28 04:25:52

环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
页: [1]
查看完整版本: PHP网站制作之本人写一个分页显示的类