武汉大学计算机学院毕业论文-基于XML的网页设计.doc_第1页
武汉大学计算机学院毕业论文-基于XML的网页设计.doc_第2页
武汉大学计算机学院毕业论文-基于XML的网页设计.doc_第3页
武汉大学计算机学院毕业论文-基于XML的网页设计.doc_第4页
武汉大学计算机学院毕业论文-基于XML的网页设计.doc_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于xml的网页设计 论 文 题 目:基于xml的网页设计专 业:计算机及应用学 号:0810424322322姓 名:郭坤 指导教师姓名:蔡贤涛 论文提交日期:2010年11月学位授予单位:武汉大学计算机学院摘 要本论文是基于xml的动态网页设计。xml能够提供一种结构化的数据,它主要定义的是数据本身的结构和类型,而非html所描述的数据的显示和外观,实现了内容和显示的分离。本论文分别用html和xml两种语言实现一个具有论坛功能、投票功能和新闻发布等功能的个人网页,通过对比,总结了xml相对于html的优势,并分析了两者的区别。关键词:xml; 网页; aspabstractthis paper is based on xml and dynamic web design. xml can provide a structure of the data, and it mainly defines the data structures and types, rather than html description of the data display and appearance. it achieved the separation between content and display. this paper was achieved by using two languages-html language and xml language to achieve a forum function, voting functions and press releases, and other functions of a personal webpage. by contrast, it summed up the advantages of xml compared with the html, and analyzed of the differences between the two languages.key words:xml, webpage, asp目 录第一章 绪论 (1)第一节 现实意义(1)第二节 现实需求(1)第二章 网页技术概述(2)第一节 html的网页设计(2)第二节 xml的网页设计(3)第三节 动态网页(12)第三章 xml网页设计的实现(16)第一节 网站前台展示(16)第二节 网站后台页面(17)第三节 数据库的设计(18)第四节 子功能模块处理(19)第五节 网页中的xml应用(24)第四章 体会与心得(30)参考文献(39)致谢(40)专科生毕业设计第一章 绪论第一节 现实意义随着计算机技术的日益发展,现代社会已经到了真正的信息时代。在internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。在政治方面,它会提高政府的工作效率,推动民主化进程;在文化生活方面,网络媒体拓宽了信息渠道,使思想文化更加多元化;在工作方式上,出现了按个人方便的时间上下班制或在家工作制。特别是在经济生活方面,它正加速全球经济一体化进程,快速的信息交换模糊了地域界限的商务活动,使传统商业模式发生了深刻的革命,这场革命正影响着金融业、商业、制造业等一系列相关行业。与传统媒体相比,互联网具有传播范围广、保留时间长、交互性强、成本低等优势,而这些优势注定了它将成为21世纪传媒界的先锋。第二节 现实需求上世纪末期,中国互联网掀起建站高潮。据cnnic最新统计报告截止到2006年6月30日,我国网民人数达到了1.23亿人,与2005年同期相比增长了19.4%,国内外大批企业已经于互联网上排兵布阵,谁更好的抢占了网上的市场,谁就赢得了下一个阶段的主动。internet上发布信息主要是通过网站来实现的,获取信息也是要在internet“海洋”中按照一定的检索方式将所需要的信息从网站上下载下来。因此网页作为信息传递的载体,在internet上的地位显而易见,它已成为政府、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。由于互联网这种新媒体在通讯界的地位与日俱增,因此网页的开发制作有着巨大的现实需求。 第二章 网页技术概述第一节 html的网页设计一、html的定义html(hyper text mark-up language)即超文本标记语言,是www的描述语言。用于控制 web 浏览器(如microsoft internet explorer等)显示文档的方式。 用 html 标记进行格式编排的文档称为 html 文档。html 文档必须具有正确的格式才能被浏览器软件正确识别和解释。这类网页开发基础是html+script(超文本+脚本语言)。由于html是在文本文件中通过标记来控制界面元素的显示,因此具有良好的可移植性。通过脚本语言,可提供灵活控制的手段。在web服务器端还可以通过cgi程序或asp脚本语言,构造三层网络应用程序,进一步增加网页的交互性。二、html网页的缺陷在html文件中有许多不同的标记,这些标记都有它特定的位置与目的,如标记定义了文字的字形与字号,标记则将文字的格式定义为粗体字。但是html并不完美,它只是一种表达的技术,基于html的网页仍然存在一些问题:1. 功能有限。html语言是一种标记语言,其中的众多标记仅是一种显示标记,而不是内容标记。标记本身不能揭示所包含内容的含义,计算机只能根据文档中各种标记在网络浏览器上产生特定的显示,却不能提取出文档所包含的内容信息。这一缺陷限制了网上的信息搜索向着更精确和更有意义的方向发展。2. 可扩展性差。标准的html规定了固定的标记集合,普通用户不能定义自己的标记。这使得html语言很难扩展。这严重地限制了html语言的处理能力,许多比较特殊和具有专门格式的信息,例如化学方程式、数学公式采用html语言都是无法表达的。3. 标准性差。各个浏览器厂商为增强自己浏览器的功能和方便用户的使用,一再地在自己的浏览器产品上增加新的功能,使自己的浏览器产品具有更强大的处理能力,甚至允许当用户使用不完全标准的html标记时浏览器不会发生错误。浏览器厂商对功能的扩展使得文档的兼容性下降,在一种浏览器上能够正常显示的html文件不一定能在另一种浏览器上正常显示,这种状况使得信息的传播和共享受到了极大的限制。网页的编辑人员必须使用microsoft internet explorer和netscape navigator都支持的标记,否则同一个html文件在这两种主流浏览器上就会得到不同的页面效果,甚至会发生错误。网络浏览器这种非标准的发展趋势,给html文件的编辑者和使用者带来越来越多的问题。第二节 xml的网页设计xml以其良好的语义及清晰的结构受到人们的推崇,是网络间进行数据交换的理想格式。目前,世界上有很多标准化组织都在致力于基于网络资源标准化的研究,并制定了一些相应规范。下图为标记语言的家族:gml(1969)mathmlcmlhtml(1993)xhtml(1969)xml(1998)sgml(1985)svgwml图2-1 标记语言家族一、xml的定义xml是一种扩展标记语言,它使用有意义的标记、具有严格的语法控制、将网页的数据和显示分开来。这些特性使开发者可以建立自己的有意义的标记,来描述网络信息,实现网络信息的标准化。利用网页的数据和显示分开来的特性,可以把用xml描述的内容用各种不同的风格来显示,实现网页的个性化。二、xml的特点可扩展标记语言xml(extensible markup language)是一种源置标语言,它正像html一样同样依赖于描述一定规则的标签和能够读懂这些标签的应用处理工具来发挥它的强大功能1。现在,它正影响着网络软件的设计,并为world wide wet上交换信息和构建通信基础结构提供了新的可能性。xml既是标记语言,又是可扩展的(extensible)标记语言。相对于html的优点是它将用户界面与结构化数据分隔开来。这种数据与显示的分离使得集成不同来源的数据成为可能。xml并非像html那样,提供了一组事先己经定义好了的标签,而是提供了一个标准,利用这个标准,xml允许用户创建自己的标签来标识任意内容文档的任意结构,并允许我们根据它所提供的规则,制定各种各样的标记语言。1、扩展性html标记只能用来指定文字的粗体或斜体的显示,xml却能够提供一个标示结构化数据的结构,声明与其相关的数据为如书名、售价、经销商、数量或其他任何数据元素。随着互联网上许多机构已逐渐采用xml标记后,用户便可以借此搜索并操作任何应用程序中的数据,一旦找到所需的数据,便可借助任何方式通过网络传递,并在浏览器和其他应用程序中做进一步的处理和检查,只要接收数据的应用程序可以解读xml中的数据即可,至于数据来自何处,如何写入xml文件中,便无关紧要了。2、数据的呈现与现实是分离的xml最主要的功能是保持使用者界面与结构化数据的独立,在html中会使用标记来告诉浏览器将数据显示为斜体或粗体,在xml中,可以使样式表(xsl和css)定义数据的内容。xml将数据的呈现及处理分开,让数据的交换就像用html显示数据一样简单,用xml编写的数据,可以借助网络传递到任何地方,也不需重组数据库或文件中的信息,只需要套用不同的样式表和应用程序,就可以按照希望的方式显示并处理数据了。3、自定义xml的数据dtd会附加在xml文件中,定义元素及元素之间的结构关系及文件规则,接受xml文件的应用程序没有所输入数据的说明时,dtd就可以协助识别数据。一个xml处理程序可以核对输入的数据与dtd所定义的规则,以确认数据结构是否正确,由xml编写的数据均可自定义,因为描述所需的标注,已经包含在数据中了,xml是开放和具有弹性的格式,让信息的交换与转换更加容易。例如,xml可以用来描述html页面,或用来描述包含在商业规则或电子商务交易中的对象数据,因为xml有别于html,所以xml可以包含在html文件中,借助在html页面内嵌xml数据,可以对传递来的数据采取不同的显示方式。4、xml schemaschema是xml文件规则的正式陈述,也就是xml的元素名称,它指定xml文件中所允许的元素及其可能的组合,提供和dtd相同的功能,不过,因为schema语言的可扩展性,开发人员可以使用数据类型、继承性以及呈现规则来加强schema,使schema语言的功能远比dtd更为强大。利用xml schema,让xml的数据可以描述本身的结构,因此,软件无需内建任何数据结构的陈述,就可以借助解读某些数据来了解其结构。三、xml技术详述(一)xml文件的组成1、xml文件的基本组成xml主要的目标之一就是提供文件数据内容的结构化,每一个xml文件都包含了逻辑结构与实体结构两部分,在逻辑结构中包含了文件中的元素与其结构的层次与顺序,而实体结构则包含了文件的数据内容,也就是通常看到的文件格式。2、xml文件的逻辑结构逻辑结构是指文件中各个不同元素的组织结构,逻辑结构代表文件构建的原则,一份完整的xml由声明、元素、处理指令与注释组成,其中有一些是可选择的对象,有一些是必要的对象,但通常可以将xml文件分成文件头与文件主体两部分。(1)文件头xml文件头是由两个基本组件所组成:xml声明与dtd文件类型声明a、xml声明下面是一段xml声明,xml声明定义了文件所遵守xml规格的版本。在这一行xml声明的程序代码中,version=1.0表示该文件遵守xml1.0的规范。encoding=gb2312表示如果在该文件中用到中文内容,就必须加上中文编码。standalone=yes表示该文件不会引用其他文件。b、dtd声明dtd声明必须编写在xml声明与文件主体之间,用于定义该文件中数据结构的规则。若dtd文件类型定义是直接编写在xml文件头去中,使用内部dtd声明的方式来声明这些定义,不会引用到其他的文件,所以在xml声明中可以加上standalone=yes。dtd文件类型声明也可以指向一个包含所有或部分dtd文件类型声明的外部文件,这样的方式能够简化xml文件的复杂程度,当文件类型变更时只需要修改这个外部文件即可,不必去修改所有xml文件中的dtd声明,以达到快速开发与方便维护的目的。(2)文件主体文件主体是用来存放数据内容的区域。xml文件中可以被应用程序运用的数据都在文件主体中。所谓元素,也就是标记的名称,如与是开始与结束标记,而book则为元素,所以可以通过dtd中对元素的定义来控制标记的运用。3、xml文件的实体结构xml文件的实体结构是由文件中的内容所组成的,每个实体都有其名称与内容,实体可能只是文件中的一个代表字符,也可能是一个外部的文件,从逻辑结构来看,实体是先在文件头中被声明,然后在元素中被参照,只要是在dtd声明过,实体就可以在文件中被使用,而实体的参照会告诉处理器去取得实体的内容,并在文件中使用。(二)xml文档的类型基本上有两类相关的xml文档:构造良好的(well-formed)xml文档和有效的(valid)xml文档。本节主要介绍构造良好的xml文档应该满足的标准,简单地介绍了什么是有效的xml文档,以及用什么方式判断一个xml文档是一个有效的xml文档。1、构造良好的xml文挡 构造良好的xml文档遵守xml语法的一般规则,这些规则比html和sgml的更为严格。xml文件所有的标记都必须有结束标记,如成对出现的结束标识符,或者在右尖括弧前带有一个斜杠的空元素标记,即空标记,如。xml标识总是以左尖括弧或开始,元素类型和属性名称是大小写区分的,属性需要引号等等。下面将通过简单的实例阐述构造良好的xml文档有哪几个方面的要求。(1)文件必须以xml声明开始(2)含有数据的元素必须有开始和结束标记(3)空标记的元素必须以/作结束(4)文件必须有一个根元素(5)属性值必须使用引号(6)字符只能用在标记中,而&字符只能用在尸体参照中2、构造有效的xml文档一个有效的xml文件必须严格遵守xml所有的规范,也必须遵守xml规格书中对有效文件所规定的所有限制,所以xml处理器必须了解xml规格书中的有效性限制,并检查文件中任何可能违反限制的情况,若是发现错误,必须将错误信息传送给前端的应用程序。除此之外,xml处理器必须依据dtd中所制定的规则检查xml文件的有效性,这样的检查与处理须花上许多时间,而且也不一定是必要的,所以xml只会支持符和规格文件的概念。3、使现存html网页符合xml标准规格目前互联网上许多网页的设计都十分粗糙,是因为没有采用xml,若按如下方式修正了错误,就会让网页变得整齐、显示速度更快而且更容易维护:(1)结束所有的开始标记(2)删除单独的标记,而且不要让元素交错重叠(3)为属性加上引号(4)使用根元素(5)所有的标记都使用同样的大小写格式(6)关闭空标记(7)加上xml声明(三)dtd文件类型定义dtd(文件类型定义)提供了所有元素、属性与实体间的相互关系,dtd能够详细的描述文件的结构规则。例如,dtd可以指定一个book元素中只能有一个name子元素和price子元素,但是可以有一个或一个以上的writer子元素,而introduction子元素则是可有可无的。dtd是以一连串的标记的定义来完成这些元素、实体或属性的显示。1、为什么使用dtddtd可以被直接嵌入到所描述的文件中,也可以利用外部链接来使用,其中使用外部链接的dtd可以让网站上的xml文件共用同一个dtd规则,这样的文件类型已得到网上许多组织团体的认同2,因此使dtd逐渐成为网络文件类型定义的新标准。dtd使编写的程序能够识别从其他的地方传来的文件。例如,如果医疗单位规定通用一种符合dtd的病历表示法,那么所有的医疗机构就能看得懂其他以医疗单位所制作的病历,当病人在外地或其他医疗机构求诊时,医师们就能够通过网络马上取得患者过去的病历数据,做更有效的诊断与处理。dtd定义出了什么应该、什么不应该出现在文件之中,同时也建立出编辑器必须支持浏览或编辑元素所需要的标准,更重要的是它还建立出延伸的部分与被dtd判为无效的部分,这样就能避免软件供应商把持这些原本应该要开放的协定而垄断市场。2、dtd的优点使用dtd文件类型可以达到文件数据结构与格式的统一,这在许多应用上是相当重要的,因为除了能够确保文件结构与格式正确外,它还可以避免数据的遗漏。(1)可重复使用当文件类型定义好之后,就像一张蓝图,可以被重复使用,建立相同类型的文件,降低xml文件的创建成本。不过,想要定义一份完整性高、适用性广的文件类型,并不是一件轻松的工作,往往需要很高的代价与很多的时间做统一与整合的工作,所以通常都是以特定的应用领域为定义范围。(2)继承关系称父对象为基础类别,以此基础类别作为建立其他对象的基础,用这种方式延伸出来的对象称为子类别,可以建立无数的子类别,也可以建立子类别别的子类别,这样,便可以重复使用已经存在的功能与特性,也可以修改以符合特殊需要,节省了许多编写与测试的时间。(四)xsl文件的描述扩展样式语言(extensible stylesheet language)简称xsl,是针对xml文件所建立的格式化语言,也可以说是xml的一种延伸应用,所以xsl在结构和语法上都与xml十分相似,用来定义xml文件之间如何转换的规则。变形之后的xml文件可以使用原始文件中的markup和文件类型定义,也可以使用一组完全一致的标记。1、为什么要使用xslxsl是为xml文件定义的一种标记语言,它将提供远远超过css的强大功能,如将元素再排序等。实际上,简单的xml已可用css来解释,然而复杂度较高的结构化xml数据或xml文件只能依赖于xsl的极强的格式化能力展现给用户。xsl样式表集合了一系列设计规则,以用于从xml文件中提取出信息,并将其转换成html等其他格式。这种转换将采用一种公开的方式,使其更加容易方便地被程序员描述。而且,xsl还将提供多种脚本语言的通道以满足更为复杂的应用需求。尽管xsl是一项新的标记语言,但程序员完全可以继续充分发挥其所熟悉的html或脚本语言的优势。xsl凭借其可扩展性能够控制无穷无尽的标签,而控制每个标签的方式也是不受限制的,这就给web提供了高级的格式特性,例如旋转的文本、多列和独立区域。它支持国际书写格式,可以在一页上混合使用从左至右、从右至左和从上至下的书写格式3。2、xsl转换对xml提出的要求:第一,允许显示xsl转换语言。允许通过将xml转换为符合显示要求的语法和结构,或者转换成html以及xsl格式化对象语言来使xml数据的显示成为可能。第二,直接浏览xml文档。ie 5能应用xsl形式来产生html文档,允许直接浏览xml文件。第三,内容递送给下级浏览者。xsl转换语言能在服务器上执行,以向客户级浏览者提供xml文档。第四,通过查询、排序、过滤转换xml文档。转换语言能被用在一个单一的语法中实现包括过滤、排序、汇总数据等多用途的转换。3、xsl处理器转换示意图xslxmlxslxsl处理器xsl处理器html浏览器显示文档内容图2-2 xsl处理器转换示意图4、xsl的作用基于xml的数据xsl处理html/css或其它的表现形式xsl样式表图2-3 xsl的作用(五)xml链接技术web迅速发展和普及的一个重要因素是html的应用。而html真正强劲的地方在于它在文档中可嵌入超文本链接。这些可以嵌入影像或让用户从一个html页面到另一个页面的链接,这种链接定义两个文档之间的关系。这给用户提供了一种从当前页面中获得更多相关数据的途径。同时,这也是用户在查询数据中所使用的典型方法。为了查找数据,用户浏览某页面,同时在该页面中可能会发现更符合其要求的内容,而这些内容通过一个链接存放在不同的页面上。而xml提供了超越html语言的强大的文档链接能力,使人们可以创建资源多相和复杂的链接,并可以轻松的定位文档的片断。xml的链接技术分为两部分:xlink和xpointer,xlink(xml linking language,xml链接语言)定义一文档如何与另一文档的链接,而xpointer(即xml pointer language,xml指针语言)定义文档的各部分如何寻址。xlink中定义了两种链接,既简单链接和扩展链接,简单链接类似于html中的超链接,而扩展链接功能十分强大。扩展链接可以提供多个链接目标,通过在扩展链接元素中插入locator子元素实现。每个locator元素都指定一个超链接资源。通过样式表,可以制作出友好的多超链接界面,如:单击某段文本,就弹出一个下拉菜单,列出所有的相关链接,供读者读取。(六)xml文件对象模型dom1、什么是domdom(document object model)是书写xml分析器的接口标准。它可以使用不同的对象来代替xml文档的不同组成部分,利用这些对象的方法和属性来创建访问链接到web网页中的xml文档。该对象库还可以让用户构建xml语法树,并提供了更有效的方法来创建xml文档。例如,用户可以用dom搜集来自不同位置的数据,或者根据不同种类的数据源来自动创建xml文档。下图为dom在应用程序开发过程中所处地位的示意图:xml文档xml分析器dom接口xml应用程序图2-4 dom在应用程序开发过程中所处地位从图中可以看出,应用程序并不是直接对xml文档进行操作的,而是首先由xml分析器对xml文档进行分析,然后,应用程序通过xml分析器所提供的dom接口对分析结果进行操作,从而间接地实现了对xml文档的访问。由于w3c把dom定义为一套抽象的类而非正式实现dom,因此,由独立的开发商来提供在具体平台和开发语言下标准接口的实现,所以,其具体实现在不同的平台或语言处理系统中是不同的。2、dom的使用对于一个格式规范的xml文档,dom是一个应用程序接口,它定义了文档的逻辑结构以及访问和操作该文档的方式。使用dom,应用程序开发人员可以创建文档,遍历文档的结构,增加、修改或者删除元素及其内容4。dom是一个文档对象模型,dom中的对象特征允许应用程序和脚本动态地访问并更新文档的内容、结构与样式。通过dom节点对象树来访问树中的任何一个节点,就是通过dom树对xml文档的遍历。3、sax接口与dom接口比较sax(xml简单应用编程接口)利用基于事件的方式来处理xml文档。基于事件是指sax为开发者提供处理特定元素的方法,而不必要求在应用层次中处理之前预建的元素。这带来的好处是没有必要的结构将不被创建;作为代替,将在任何感兴趣的事件发生时,调用应用程序源代码。sax不仅在处理元素子集时特别有效,而且是处理大规模xml文档的有用工具。如果需要处理所有的元素,会碰到内存问题,因为建立众多对象十分耗费内存。而sax不必建立所有的元素,处理过程将实时进行,这与大量的传递调用正好相反。sax被提出的原因是解决一些不使用的dom接口,它们的实现过于庞大且比较慢。dom是基于树型结构的,得到w3c推荐并符合api标准的接口规范。而sax是由事件驱动,并有广泛支持api标准的接口规范。dom适合于结构化编辑xml文档,如排序、记录移动和其它应用程序共享xml文档操作。而sax效率高(不创建显示数据结构),适合大文档,内存与结构无关的任务,如计算xml文档节点数或提取特定节点内容5。从上述可以看出,凡是sax可以做的工作dom都可以做,但是由于dom是整体装入来处理xml文档,因此对系统资源的占用很大,尤其是处理大量文档时更加明显,所以采用dom模型往往给服务器端带来很繁重的任务。而对于sax来说,dom的很多工作它很难完成,如排序、移动等,因为它缺少对于xml文档的整体视图,所以这就要求在采用sax之前,必须确定自己的应用是否适合于sax的内容。(七)xml的开发工具开发 xm l有许多工具可以使用: notepad:最直接、最简单的文本编辑工具,在windows附件中就可找到。 microsoft xml notepad: 微软专门为设计xml文档而提供的编辑软件,可以借助它验证xml文档的有效性。 microsoft xml tree viewer: 利用这个软件可以把xml文档的内容用树的结构形式显示出来。 microsoft xml validator: 该软件可以检查xml文档是否是“格式良好的”以及其有效性,并对错误发出警告。 microsoft xsl debugger: 样式单文件的复杂性使开发人员在编写时容易出现错误,这个软件就是帮助用户调试样式单文件的,把复杂枯燥的调试过程用可视化界面显示出来。 wordperfect: 一种对开发xml和sgml提供高级支持的文字处理器,具有所见即所得的开发环境,提供向导、自动化控件的插入和文档的自动 生 成 等功能,它是一款收费的商业产品,支持windows9 5/98/2000和linux平台。 sixpack: 为xml的解析和开发提供简洁的界面,支持macintosh平台,并公开源代码。 xmlspy: xmlspy是所有xml编辑器中做得非常好的一个软件,支持wyswyg。支持unicode、多字符集,支持well-formed和validated两种类型的xml文档,支持newsml等多种标准xml文档的所见即所得的编辑,同时提供了强有力的样式表设计。下图为xmlspy的界面窗口:图2-5 xmlspy的界面窗口第三节 动态网页一、动态网页概念静态网站是网站建设初期经常采用的一种形式。网站建设者把内容设计成静态网页,访问者只能被动地浏览网站建设者提供的网页内容。静态网站的工作方式:当客户端向网站服务器提出请求,服务器就把请求的内容传送给用户浏览器,并由用户浏览器负责显示请求结果。用这种方式组建的网站,当网站设计人员把网站的设计方案提交并付诸实现后,网站的内容就不再会有任何变化。无论用户从何地何时提交请求所得到的结果都是一样的。每当需要修改的时候,网站设计者就必须要修改所有涉及到的网页,这就大大增加了系统维护的开销,也使得一般非专业人士对网站的更新维护比较困难6。所谓“动态”,并不是指那几个放在网页上的gif 动态图片,它应该满足以下几条规则:1、“交互性”。即网页会根据用户的要求和选择而动态改变和响应,将浏览器作为客户端界面,即软件的web 集成,这将是今后web发展的大趋势。2、“自动更新”。即无需手动地更新html文档,便会自动生成新的页面,可以大大减少工作量。3、“因时因人而变”。即当不同的时间、不同的人访问同一网址时会产生不同的页面。4、网站的数据资料设计成全部或大部分从数据库中动态的取得,且数据库对于使用者完全透明。二、动态网页技术(一)asp简介asp是active server pages的简称,是微软公司开发的服务器脚本编写环境,asp内嵌于iis中,它除了内置的request对象、response对象、server对象、session对象、application对象及objectcontext对象等基本对象外,还允许以外挂的方式使用activex控件,它是结合markup标签语言(如html或者xml)和脚本语言(如vbscript或javascript)及activex来处理的一种动态、交互的页面,可以使用某种类型的中间应用程序或插件程序来连接。它能够接受用户请求,读取并解释合适的基于服务器的脚本文件;接着创建输出页,并传送给web服务器;最后作为响应发给客户端7。因此我们可以使用asp来创建动态的web页面,从而开发出强大的web应用程序。(二)asp的web数据库访问技术asp是功能强大的服务器端脚本编程环境,利用asp内置ado对象组件,可以轻松地存取各种数据库。asp对数据库访问的执行过程如下:浏览器向web服务器提出asp页面文件请求,服务器将该页面由asp.dll进行解释并在服务器端执行,通过启动odbc驱动程序或使用专用接口完成对数据库的访问,并生成动态的网页返回给浏览器,浏览器再将该网页显示在客户端屏幕上。其执行原理如图:图2-6 asp工作原理(三)asp具有以下特色:1、易用性使用vbscript、javascript等简单易学的脚本语言,结合html代码,即可快速的完成网络应用程序,不需要编译,可在服务器端直接执行。使用普通的记事本即可以进行编辑设计。2、兼容性asp能与任何activex语言兼容。3、安全性asp的源程序不会被传到客户浏览器,提高了程序的安全性。4、可扩充性asp具有无限可扩充性,可以使用visual basic、java、visual basic c+等编程语言来编写所需要的服务器控件。asp的具体执行过程如下:1、用户在浏览器的地址栏中键入asp文件,并回车触发这个asp申请。2、浏览器将这个asp的请求发送给web服务器。3、web server接收这些申请并根据.asp的后缀名判断这是.asp要求。web server从硬盘或内存中读取正确的asp文件。4、web server将这个文件发送到名为asp.dll的待定文件中。5、asp文件将会从头至尾执行并根据命令要求生成相应的html文件。6、html文件被送回浏览器。7、用户的浏览器解释执行这些html文件并将结果显示出来。三、基于xml的动态网页xml的优势之一是内容和样式的分离。 xml既可以通过统一的数据结构传输和处理数据,非常方便的实现数据交换,而且在用户本地,又可以根据不同的需要将这些数据以不同的形式表现出来。从而对数据内容本身和数据的外在的表现形式分别加以描述。基于xml动态网页的特点就是利用xml语言的内容格式的分开来处理网页信息做到的,我们可以利用xml文档来存储网页的文字和图像等一切信息,可以用css或者xsl来存储网页的格式信息。xml文档内容的基本单元元素,它的语法格式如下:文本内容元素是由起始标签、元素内容和结束标签组成。用户把要描述的数据对象放在起始标签和结束标签之间。如:动态网页教程。xml元素中还可以再嵌套别的元素,这样使相关信息构成等级结构。除了元素,xml文档中能出现的有效对象是:处理指令、注释、根元素、子元素和属性。处理指令给xml解析器提供信息,使其能够正确解释文档内容,它的起始标识是“”。常见的xml声明就是一个处理指令:处理指令还可以有其他的用途,比如定义文档的编码方式是gb码还是unicode编码方式,或是把一个样式单文件应用到xml文档上用以显示注释是xml文件中用作解释的字符数据,xml处理器不对它们进行任何处理。注释是用“”引起来的,可以出现在xml元素间的任何地方,但是不可以嵌套。根元素和子元素:如果一个元素从文件头的序言部分之后开始一直到文件尾,包含了文件中所有的数据信息,我们称之为根元素。xml元素是可以嵌套的,被嵌套在内的元素称为子元素。属性给元素提供进一步的说明信息,它必须出现在起始标签中。属性以名称/取值成对出现,属性名不能重复,名称与取值之间用等号“=”分隔,并用引号把取值引起来。如: 25000,其中的属性currency说明了薪水的货币单位是美元。xm l文档的基本结构由序言部分和一个根元素组成。序言包括了xml声明和dtd(或者是xml schema), dtd (document type define,文档定义类型)和xml schema都是用来描述xml文档结构的,也就是描述元素和属性是如何联系在一起的。在上述xml的文档前面加上如下的序言部分,就构成了一个完整的xml文档:一个xml文档中有且仅有一个根元素,其他所有的元素都是它的子元素。一个xml文档首先应当是“格式良好的”(well-formed),该规定的正式定义位于:/tr/rec-xml利用css层叠样式表:xml 所关注的是对内容的描述,不能直接在浏览器中显示。要在浏览器中显示xml文档,必须为它添加样式单(style sheet)。样式单是一种专门描述结构文档表现方式的文档,它既可以描述这些文档如何在屏幕上显示,也可以描述它们的打印效果,甚至声音效果等。样式单一般不包含在xml文档内部,而以独立的文档存在。与html描述数据显示方式的传统方法相比,样式单有表达效果丰富、文档体积小,便于信息检索、可读性好等优点。一个样式单可作用于多个xml文档,一个xml文档也可使充。css并不是一种程序设计语言,而只是一种用于网页排版的标记性语言,其全部信息都是以纯文本的形式存储在一个文档中,因此,可以使用记事本来编辑css文档。css不但增强html的表现能力,而且能够用来表现xmlcss的特点:自从css出现以后,其丰富的表现功能和灵活多变的实现机制立即得到广大网页设计人员的青睐。第三章 xml网页设计的实现第一节 网站前台展示前台页面设计如下图:图3-1 前台界面前台功能结构图:首页美丽校园激情绿茵流行音乐七彩假日精彩图文信息导航进入论坛管理登陆填写用户信息网友留言管理登陆留言管理图3-2 前台功能结构图第二节 网站后台页面后台页面设计如下图:图3-3 后台界面后台功能结构图:后台栏目修改登陆密码用户管理投票管理信息管理添加修改删除添加修改删除图3-4 后台功能结构图第三节 数据库的设计表3-1新闻公告表表3-2创建投票表表3-3投票选项表第四节 子功能模块处理一、管理员登陆登陆要考虑到安全问题,本网站从结构设计上为安全提供第一位的保证。所有密码使用md5不可逆加密,为整个系统的安全做好了充分有效的保障。同时系统设计了修改密码的功能,修改密码功能考虑了校验和安全性。比如说,原密码输入错误会弹出对话框,两密码输入不一致会弹出对话框等。如下图:图3-5 管理员修改密码界面修改密码的代码实现:set rs=server.createobject(adodb.recordset)rs.open select * from shop_admin where admin=&session(admin)&,conn,1,3if md5(trim(request(password)rs(password) thenresponse.write alert(原密码错误,请返回重新输入);history.go(-1);response.endelsers(password)=md5(trim(request(password2)rs.updaters.closeset rs=nothingsession(admin)=session(flag)=response.write alert(更改成功,请用新密码重新登陆!);history.go(-1);end ifresponse.endend if二、投票的添加修改与管理为了能够多角度的了解网站浏览者对该网站的意见及网站各种信息的看法,网站设置了投票功能。用户可以根据自己的意愿进行选择,投票方法方便快捷,并设置了查看按钮,投票结果一目了然,及时了解所有投票者的观点。投票包括单选和复选两种方式,投票信息将会保存在access数据库中。管理员可通过后台对投票进行添加、修改和删除。如下图:图3-6 投票的添加修改与管理代码如下:if request(id)del thenerr=0title=request(title)if title= thenerr=1error=error+标题不能为空nend ifa=0for i=1 to request(xz).countif request(xz)(i)= thenexit forend ifa=a+1nextif a=0 thenerr=1error=error+选择内容不能为空nend ifif err=1 thenresponse.write alert(&error&);response.write history.back(1);response.endend ifend ifif request(id)=xg thenconn.execute(update class set title=&title&,style=&request(style)& where id=&request(classid)conn.execute(delete from vote where class=&request(classid)for i=1 to request(xz).countif request(xz)(i) thenconn.execute(insert into vote (vote,color,class) values (&request(xz)(i)&,&request(color)(i)&,&request(classid)&)elseexit forend ifnextresponse.write alert(修改投票成功);response.write location.href=votelist.asp;elseif request(id)=del thenconn.execute(delete from vote where class=&request(classid)conn.execute(delete from class where id=&request(classid)response.write alert(删除投票成功);response.w

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论