PHP新手上路(五)

建设一个简单交互的网站(一)

  PHP的许多特点与其他软件或者工具有关。利用迄今为止我们所学到的PHP知识,我们可以试着建立一个简单交互的网站。利用这一过程我们又可以学到不少东西。好吧,我们现在开始专注于一个典型个人网站的建设。

5.1 计划一个站点

  一般一个个人站点包括一个欢迎页面、一个留言本页面、一个书签链接页面、一个计数器、联系信息,甚至还有照片集和一些音乐文件等等。

5.2 用include和require进行模块化

  我们看一些用PHP构架的网站,几乎网站每一个页面的PHP文件里都会有include和require嵌入其间。这是因为使用include和require不但可增强代码的可读性,而且可将站点分成模块来管理。一般来说,对于一个网站上的每个页面肯定会有重复的内容。例如:页面头部的导航条、广告图标、或边部导航等。可能还在每页的页脚即页面的底部有著作权或一些基于文本的导航条。如果我们要修改一个包含成千上百个页面的大网站上的导航条或是徽标之类的内容,用我们以往的方法,我们只能遂一对每一页面进行更改。不用我说,大家也能想像到这是一件多么艰巨而痛苦的差事。那么,我们到底有没有更好的解决方法呢?答案是肯定的。我们可以将重复的内容都放到一个文件中,然后在每一个需要这些内容的页面上用PHP的include和require函数动态地调用该文件。这样,以后如果我们想对所有页面上的这些复用内容做修改时,就只需要更改包含了这些重复内容的文件。

  为了便于大家理解,让我们先来看看include和require的一个简单应用:

HTML的页面开始,也许你会在站点的每页的头部包含它(head.htm)。
<HTML>
<HEAD>
<TITLE> 我的个人主页 </TITLE>
</HEAD>
<BODY>

页面内容(content.htm)。  
<H1>
欢迎来我的寒舍,虽然这里现在暂时还没有什么。  
</H1>

HTML的页面的结束(trail.htm)
</BODY>
</HTML>

用include和require函数把HTML从PHP中分离出来,将HTML和PHP分成模块:  
<?
/*
调用HTML页面的头部
*/
require("head.htm");
/*
调用HTML页面的内容
*/
require("centent.htm");
/*
调用HTML页面的尾部
*/
require("trail.htm");
?>

5.3 让我们从一个标题页面、一个联系信息页面和一个简历页面开始。我们同样需要标准的、通用的页面头部和底部。

标题页面--front.htm  
这里我们有一个非常简单的html文件:
<HTML>
<HEAD>
<TITLE>
我的个人主页--欢迎
</TITLE>
</HEAD>
<BODY>
<H1>
我的个人主页
</H1>
<H2>
欢迎
</H2>
<HR>
<P>
欢迎来我的寒舍,虽然这里现在暂时还没有什么。
</P>
<P>
不过我希望马上就可以多起来。
</P>
<HR>
<P ALIGN="CENTER">
<SMALL> <I>
Copyright ? 我自己,1999
</I> </SMALL>
</P>
</BODY>
</HTML>

联系信息页面--count.htm
同样我们又有了一个简单页面:
<HTML>
<HEAD>
<TITLE>
我的个人主页--联系信息
</TITLE>
</HEAD>
<BODY>
<H1>
我的个人主页
</H1>
<H2>
联系信息
</H2>
<HR>
<P>
你可以通过1-800-PHP-INFO联系我
</P>
<HR>
<P ALIGN="CENTER">
<SMALL> <I>
Copyright ? 我自己,1999
</I> </SMALL>
</P>
</BODY>
</HTML>

5.4 从HTML到PHP

  从上面你可以看出,每个页面有相同的头部和底部。像上面那样每个页面都写入相同的信息在工作量少的时候还可以,但是想象一下当有100多页面且你需要全部更改其头部或底部时你要花费多大精力?一页一页的手工更改是一件多么冗长无趣的事情啊!所以我们应该为这些页面编写PHP的头部和底部文件,之后我们只要在每个HTML页面中引用它们就行了。在include和require函数中都包含一个PHP代码的文件,不管该文件的扩展名是什么,它都被当作是PHP文件。我们将把这些include文件放在一个叫include的子目录下,并取成以.inc为后缀的文件。下面我们就把这些站点的通用内容写进文件中。

全站通用变量设定:common.inc
<?
// 全站通用变量
$MyEmail = "phptalk@tnc.org";
$MyEmailLink = "<a href="mailto:$MyEmail">$MyEmail</a>";
$MyName = "PHP Talk";
$MySiteName = $MyName."'s Home Page";
?>

通用页面头部:header.inc
<?
// 定义通用页面头部
?>
<HTML>
<HEAD>
<TITLE>
<? echo "$MySiteName - $title"; ?>
</TITLE>
</HEAD>
<BODY>
<H1>
<? echo "$MySiteName"; ?>
</H1>
<H2>
<? echo "$title"; ?>
</H2>
<HR>

通用页面底部:footer.inc
<?
// 通用页面底部
?>
<HR>
<P ALIGN="CENTER">
<SMALL> <I>
Copyright ? by  
<? echo "$MyName ($MyEmailLink)"; ?>
, 1999
</I> </SMALL>
</P>
</BODY>
</HTML>

新的页面front.php3:
<?
include("include/common.inc");
$title = "Welcome";
include("include/header.inc");
?>
<P>
欢迎来我的寒舍,虽然这里现在暂时还没有什么。
</P>
<P>
不过我希望马上就可以多起来。
</P>
<?
include("include/footer.inc");
?>

新的count.php3:
<?
include("include/common.inc");
$title = "Contact Information";
include("include/header.inc");
?>
<P>
你可以通过1-800-PHP-INFO联系我
</P>
<?
include("include/footer.inc");
?>

  现在你可以体会一下这样安排的好处了。如果你想改动页面的头部或者底部,你只需要改动相应的文件就可以了。如果你要修改你的e-mail地址甚至你的名字,只要修改common.inc文件就行了。另外值得注意的是你可以把具有任何文件名或者文件扩展名的文件包含进你的文件中,你甚至可以包含其他站点上的文件。

(0)

相关推荐

  • PHP新手上路(五)

    建设一个简单交互的网站(一) PHP的许多特点与其他软件或者工具有关.利用迄今为止我们所学到的PHP知识,我们可以试着建立一个简单交互的网站.利用这一过程我们又可以学到不少东西.好吧,我们现在开始专注于一个典型个人网站的建设. 5.1 计划一个站点 一般一个个人站点包括一个欢迎页面.一个留言本页面.一个书签链接页面.一个计数器.联系信息,甚至还有照片集和一些音乐文件等等. 5.2 用include和require进行模块化 我们看一些用PHP构架的网站,几乎网站每一个页面的PHP文件里都会有in

  • 垃圾站全教程--之一(新手上路)

    我为什么要在新人栏介绍垃圾站? 因为落伍区都是MJJ老鸟,你帖了他未必看,你辛苦敲半天键盘他可能  我得意的飘. R: 还是为新人提供点东西吧,------而且这里有不少新站长,说句老实话吧,最初做站还是能马上有收益最好.          一:可以坚定你做站的信心,有了第一次的收获,你可能不会轻易放弃          二:可以减少你的前期投入,毕竟有钱人还是不多的,HOHO ,          三:网站建起来并不是一件很容易的事情,需要相当多的专业知识,你不可能短时间搞明白,甚至你可能不知

  • PHP新手上路(九)

    建设一个简单交互的网站(五) 8. 投票系统 在许多时候,我们需要收集上网者和网友们的意见.例如:新版页面与旧版页面的比较:对某一事情的看法:对体育比赛结果的预测等等.这时候,你需要一个非常有效的网上调查系统.使用PHP就可以非常方便地实现你的这一构想. 8.1 投票系统(mypolls.php3): <? $status=0; if(isset($polled)&&($polled=="c-e")){ $status=1; } #echo "$stat

  • PHP新手上路(十三)

    PHP资源 12. PHP资源 你可以通过web上的众多资源更多的了解PHP3.许多邮件列表和书籍对你都非常有用. 12.1 站点 PHP的爆炸性流行使得一夜之间出现了很多基于PHP的站点,其中不少站点有在线教程.范例代码.技巧和提示等内容. 国内  http://www.phpuser.com/ - PHP中文用户,也就是这里了  http://www.phpx.com/ - 中国PHP联盟  http://www.phpsite.net/ - PHP专门站  http://www.phpch

  • PHP新手上路(十四)

    其他杂项 13.1 生成图像 PHP可以操作处理图像.如果你已经安装了GD库,你甚至可以利用PHP生成图像. <? Header("Content-type: image/gif"); $string=implode($argv," "); $im = imagecreatefromgif("images/button1.gif"); $orange = ImageColorAllocate($im, 220, 210, 60); $px

  • PHP新手上路(二)

    为什么要选择PHP 2. 竞争对手:ASP,mod_perl,JSP 用于实现交互式动态网页的技术有好多,其中CGI又称通用网关接口(Common Gateway Interface),是外部程序和WEB服务器之间的标准编程接口,但是CGI程序带来的缺点实在太多:而Perl很好地解决了CGI中的问题,被用来驱动复杂的WEB技术:微软的ASP(Active Server Pages)的出现,以它容易上手.轻松编写程序和微软件强有力的支持后盾使得ASP一下子成了许专业编程人员和非专业编程人员的宠儿:

  • PHP新手上路(三)

    从一个简单的程序来了解PHP PHP站点的在线教程已经很棒了.而本文的该部分将让你对PHP熟悉一点.我不可能做到没有任何遗漏,我的目的只在于能让你迅速开始你的PHP编程. 3.1 首要条件 你首先必须要有一个正在工作着的支持PHP的web服务器.我假定在你的服务器上所有PHP文件的扩展名为.php3. 3.2 PHP的安装 有关PHP的安装配置,可以查阅网页陶吧上的"PHP安装全攻略"专题文章. 3.3 语法 从语法上看,PHP语言近似于C语言.可以说,PHP是借鉴C语言的语法特征,由

  • PHP新手上路(六)

    建设一个简单交互的网站(二) 5.5 计数器 让我们在首页上加上一个计数器.这个例子已经被讲过多次了,但是还是有利于演示怎样读写文件以及创建自己的函数.counter.inc包含以下代码: <? /* || 一个简单的计数器 */ function get_hitcount($counter_file) { /* 将计数器归零 这样如果计数器还未被使用,初始值将是1 你当然也可以把初始值设成20000来骗人咯 */ $count=0; // 如果存放计数器文件已经存在,读取其中的内容 if (

  • 滑动门,简洁,新手上路制作篇 (小鸽子系列)

    以前回复过几个朋友,关于滑动门的代码,那时我还没有用上IE7,FF,结果,发现只能在IE6下运行,代码也很长;今天又有朋友问我这个,我只好花一点时间,终于把这个东东完成了,希望大家喜欢; 兼容IE7;FF;IE6 代码更简洁,更易读; ▒ 恋婷滑动门技术 //中的onmouseover 改成 onclick; //]]> 流行音乐 美女写真 平面设计 网络学堂 恋爱宝典 Q小鸽子 流行音乐 的内容 美女写真 的内容 平面设计 的内容 网络学堂 的内容 恋爱宝典 的内容 [Q小鸽子] 的内容 [C

  • PHP新手上路(十)

    建设一个简单交互的网站(六) 9. 简易banner动态更替 不知大家有没有发现各大站点上的标头广告banner,我们每次访问这些站点时,都会看到不同的广告图标,或者如果你每次刷新页面时,这些广告banner就会不断地随机更替变换.要实现这种效果虽然用javascript也可以达到(象天极网站的动态变换广告banner就是通过调用javascript来实现的),但是如果我们用PHP的话,我们还可以结合数据库来做数据量很大,如每日一题之类的功能.费话少说,让我们立即来看看如何用PHP来实现bann

随机推荐