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