引 论 34- 1
第 10 讲 网页设计与编程 (一)
动态网页设计的基本概念
参考资料:
,基于开放平台的网页设计与编程, 程向前编著
清华大学出版社 2002.8
引 论 34- 2
概述
? 在过去的几年中,万维网( Web)技术的飞速
发展融汇了大量的信息,从商品广告到人才招
聘;从学术交流到娱乐新闻 … 。万维网提供了
一个可以轻松驾驭的图形化用户界面,以查阅
因特网上的文档,这些文档以及它们之间的链
接一起构成了一个庞大的信息网。
引 论 34- 3
概述
? 一般来说,早期的网页完全使用 HTML
( Hypertext Markup Language)编制,此
类网页不会随着时间、场合等其他因素而变化,
被称为“静态网页”。由于用 HTML编制的网
页仅使用普通的 ASCII代码构成,可以跨平台
(计算机及操作系统)使用。因此,无论 Web
服务器或浏览器驻留在哪一种计算机或操作系
统上,其差异并不是太大。
引 论 34- 4
概述
? 随着 Web技术的发展,单一的 HTML已经不能
满足网页制作的要求。例如:
? 用户要求在网页上产生某些动态的效果;
? 用户要求服务器发布其机器内部的时间信息,仅使
用 HTML无法完成这种要求
? 这就需要使用程序语言来把“静态”的 HTML
网页,变成“动态”的 HTML网页
引 论 34- 5
概述
? 概括起来,对动态网页技术的发展要求分成两
大类:
? 一种是商业广告方面的要求,使得网页产生动态效
果,来吸引人们的注意力
? 另一种是要求完成信息收集和交互的功能,使得网
页可以成为网络信息管理系统的工具(成为网络商
务平台的技术基础)
引 论 34- 6
概述
? 动态网页的工作模式有两种,一种是将程序代
码镶嵌在 HTML网页中,下载到用户浏览器中,
由用户浏览器进程对下载的代码进行解读和执
行后,将执行结果显示在浏览器屏幕上。
引 论 34- 7
概述
? 这类动态网页标准的发展往往是由厂商自主进行的,
因此,其工作效果往往与浏览器产品有关,以常用的
两种浏览器为例加以说明。
程序语言 IE6执行 Netscape6执行
Java 否 可
Java Script 否 可
VB Script 可 否
ActiveX对象 可 否
引 论 34- 8
概述
? 动态网页的另一种工作模式是由服务器执行镶
嵌在 HTML网页中的程序,并将程序执行的结
果发布到网络上,由用户浏览器并将结果在屏
幕上展示。
? 目前,比较流行的服务器端动态网页程序设计
语言有 JSP,ASP,PHP等。
? 本讲的重点放在服务器执行的动态网页设计
? 这种基本方法广泛应用于网络事务处理、电子
商务等应用领域。
Web网页的三种工作模式
Browser 执行
程序
Browser 解读
网页
Server
执行程序
静态网页工作模式 动态网页工作模式(1) 动态网页工作模式(2)
Web Server
下载
网页
Web Server
下载
程序
Web Server
下载
结果
Browser 解读
网页
引 论 34- 10
Browser
Database
Function
Database
Server
Process
N O S
W e b S e r v e r
Middleware
D a t a b a s e
普 通 网 站 的 基 本 构 成
Internet
HTML
files
引 论 34- 11
本讲的实验基础
? Web服务器( Apache for UNIX,Xitami for
Windows)
? 中间件( PHP)
? 数据库( MySQL)
? 这些系统环境的安装,在前序和本课程的实
验环节中已经进行
? 本讲的主要内容对服务器端的动态网页设计
的基本原理和过程进行阐述
引 论 34- 12
B r o w s e r
MySQL
Function
M y S Q L
P r o c e s s
W i n d o w s
X i t a m i
P H P
MySQL
Database
基 于 Windows的 PHP与 数 据 库 访 问 模 式 之 一 (CGI方 式 )
I n t e r n e t
引 论 34- 13
本课程的实验平台
? PHP[1]是一种在服务器端执行的脚本语言。这意味
着它可以很好地和 HTML融合,产生需要的文档。
? 选择 PHP作为学习动态网页的程序设计语言,主要是
它的简便易用,用近乎自然的方式使用数据库,保持系统平台的无关性。
? 选择 PHP,可以在 MS Windows 下开发、调试动态
网页,然后将其发布到 UNIX下的网页服务器上。
?
[1] PHP的正式定义为,PHP Hypertext Preprocessor”。
引 论 34- 14
本课程的实验平台 (续 )
? 选择 PHP作为动态网页设计的语言的另一个原
因是它的实用性。据统计,在 2000年,全世
界已经有 360万余个域名和 60万余个 IP使用
PHP编程。
? 使用 PHP可以执行很多任务,从简单地创建信
息收集表单、发送电子邮件给网站管理员,由
数据库驱动的文档管理系统、帮助系统、电子
商务应用程序等等。
引 论 34- 15
本课程的实验平台 (续 )
? PHP的语言特点基本上源于 C语言,而其对数
据库的内在支持更使之成为 ASP( 微软的服务器端
动态网页的解决方案 )的强大对手。
? 作为一种服务器内置式的脚本语言,语法混合
了 C,JAVA,Perl以及 PHP式的新语法。它
的出现使得在 Unix上更快速地开发动态网页
成为现实。
引 论 34- 16
本课程的实验平台 (续 )
? 用 PHP写出的 Web服务器端 CGI代码,可以很
轻易地移植到不同的平台上。例如,用 Linux
系统的网站,在系统负荷过高时,可以快速地
将整个系统移到 Sun工作站上,不用重新修订
CGI程序。
? 面对快速发展的因特网,这是长期规划的最好
选择之一。
引 论 34- 17
本课程的实验平台 (续 )
? 当网站发展时,用户可能会遇到这样的问题:
? 网站内容膨胀,使得访问者不能很快地得到他们所需的资料。
? 网站管理者需要收集访问者的信息,而且这些信息必须保存
以备不时之需。
? 这两个问题,可以通过建立数据库系统来解决。在
WWW的世界中,数据库无处不在。大到像新浪、搜
狐,小到一个简单的留言簿,都可以看到数据库的用
武之地。可以这样说,数据库是所有万维网高级应用
的基础。
引 论 34- 18
本课程的实验平台 (续 )
? 几乎所有主要的商业网站的数据库都是基于 结构化查
询语言 (Structured Query Language,SQL)的,
其中应用最为广泛的可能得算 Oracle了。
? SQL的出现使得信息的存储、查询、更新更容易。例
如,可以用 SQL语言为一个网站检索产品信息及存储
顾客信息。
? 在最近的几年中,一些公司发布了“开放代码”的SQL应用程序,其中最比较著名的要数 MySQL了。
它对非商业性应用开发来说是免费的,对于一般的中
小型数据库应用来说,其表现并不比 Oracle逊色。
引 论 34- 19
本课程的实验平台 (续 )
? MySQL是一个真正的多用户、多线程 SQL数
据库。
? MySQL是由一个客户机 /服务器结构来实现,
它由一个服务器守护程序 mysqld和很多不同
的客户程序和库组成,同时 MySQL足够快速
和灵活以便允许你存储记录文件和图像。
引 论 34- 20
本课程的实验平台
? Linux,Apache,PHP,MySQL组合 是本课程
所建议的实验平台之一。
? 该实验平台的优点是性能稳定,响应速度快,
该平台的建立也为学生提供了进行 UNIX操作
系统的操作训练、多用户系统中的个人网页发
布平台、使用 FTP上传网页等重要实验的实验
环境,http://202.117.35.70/
引 论 34- 21
本讲小结
? 万维网的基本概念,静态网页和动态网页的基
本概念
? 开放平台的基本概念和主要技术及软件
? 本课程的学习方法和学习环境