仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 870|回复: 19
打印 上一主题 下一主题

[学习教程] PHP网站制作之本人写一个分页显示的类

[复制链接]
萌萌妈妈 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:09:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
怎样学习,大家都知道编程是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后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
因胸联盟 该用户已被删除
5#
发表于 2015-3-3 03:07:25 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
变相怪杰 该用户已被删除
6#
发表于 2015-3-7 02:33:47 | 只看该作者
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
若相依 该用户已被删除
7#
发表于 2015-3-14 03:38:01 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
飘飘悠悠 该用户已被删除
8#
发表于 2015-3-20 03:37:03 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
简单生活 该用户已被删除
9#
发表于 2015-3-27 14:10:05 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
只想知道 该用户已被删除
10#
发表于 2015-3-31 04:04:00 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
小女巫 该用户已被删除
11#
发表于 2015-4-4 11:26:14 | 只看该作者
我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。
小魔女 该用户已被删除
12#
发表于 2015-4-5 20:36:16 | 只看该作者
我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。
透明 该用户已被删除
13#
发表于 2015-4-12 08:16:08 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
飘灵儿 该用户已被删除
14#
发表于 2015-4-13 22:53:25 | 只看该作者
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
再见西城 该用户已被删除
15#
发表于 2015-4-21 20:12:09 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
若天明 该用户已被删除
16#
发表于 2015-4-22 09:16:15 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
admin 该用户已被删除
17#
发表于 2015-5-1 13:11:41 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
第二个灵魂 该用户已被删除
18#
发表于 2015-6-4 10:58:12 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
萌萌妈妈 该用户已被删除
19#
 楼主| 发表于 2015-6-21 19:41:45 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
莫相离 该用户已被删除
20#
发表于 2015-6-28 04:25:52 | 只看该作者
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 17:30

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表