已閱讀5頁,還剩41頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
基于xml的網(wǎng)頁設(shè)計(jì) 論 文 題 目:基于xml的網(wǎng)頁設(shè)計(jì)專 業(yè):計(jì)算機(jī)及應(yīng)用學(xué) 號(hào):0810424322322姓 名:郭坤 指導(dǎo)教師姓名:蔡賢濤 論文提交日期:2010年11月學(xué)位授予單位:武漢大學(xué)計(jì)算機(jī)學(xué)院摘 要本論文是基于xml的動(dòng)態(tài)網(wǎng)頁設(shè)計(jì)。xml能夠提供一種結(jié)構(gòu)化的數(shù)據(jù),它主要定義的是數(shù)據(jù)本身的結(jié)構(gòu)和類型,而非html所描述的數(shù)據(jù)的顯示和外觀,實(shí)現(xiàn)了內(nèi)容和顯示的分離。本論文分別用html和xml兩種語言實(shí)現(xiàn)一個(gè)具有論壇功能、投票功能和新聞發(fā)布等功能的個(gè)人網(wǎng)頁,通過對比,總結(jié)了xml相對于html的優(yōu)勢,并分析了兩者的區(qū)別。關(guān)鍵詞:xml; 網(wǎng)頁; 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)第一節(jié) 現(xiàn)實(shí)意義(1)第二節(jié) 現(xiàn)實(shí)需求(1)第二章 網(wǎng)頁技術(shù)概述(2)第一節(jié) html的網(wǎng)頁設(shè)計(jì)(2)第二節(jié) xml的網(wǎng)頁設(shè)計(jì)(3)第三節(jié) 動(dòng)態(tài)網(wǎng)頁(12)第三章 xml網(wǎng)頁設(shè)計(jì)的實(shí)現(xiàn)(16)第一節(jié) 網(wǎng)站前臺(tái)展示(16)第二節(jié) 網(wǎng)站后臺(tái)頁面(17)第三節(jié) 數(shù)據(jù)庫的設(shè)計(jì)(18)第四節(jié) 子功能模塊處理(19)第五節(jié) 網(wǎng)頁中的xml應(yīng)用(24)第四章 體會(huì)與心得(30)參考文獻(xiàn)(39)致謝(40)??粕厴I(yè)設(shè)計(jì)第一章 緒論第一節(jié) 現(xiàn)實(shí)意義隨著計(jì)算機(jī)技術(shù)的日益發(fā)展,現(xiàn)代社會(huì)已經(jīng)到了真正的信息時(shí)代。在internet飛速發(fā)展的今天,互聯(lián)網(wǎng)成為人們快速獲取、發(fā)布和傳遞信息的重要渠道,它在人們政治、經(jīng)濟(jì)、生活等各個(gè)方面發(fā)揮著重要的作用。在政治方面,它會(huì)提高政府的工作效率,推動(dòng)民主化進(jìn)程;在文化生活方面,網(wǎng)絡(luò)媒體拓寬了信息渠道,使思想文化更加多元化;在工作方式上,出現(xiàn)了按個(gè)人方便的時(shí)間上下班制或在家工作制。特別是在經(jīng)濟(jì)生活方面,它正加速全球經(jīng)濟(jì)一體化進(jìn)程,快速的信息交換模糊了地域界限的商務(wù)活動(dòng),使傳統(tǒng)商業(yè)模式發(fā)生了深刻的革命,這場革命正影響著金融業(yè)、商業(yè)、制造業(yè)等一系列相關(guān)行業(yè)。與傳統(tǒng)媒體相比,互聯(lián)網(wǎng)具有傳播范圍廣、保留時(shí)間長、交互性強(qiáng)、成本低等優(yōu)勢,而這些優(yōu)勢注定了它將成為21世紀(jì)傳媒界的先鋒。第二節(jié) 現(xiàn)實(shí)需求上世紀(jì)末期,中國互聯(lián)網(wǎng)掀起建站高潮。據(jù)cnnic最新統(tǒng)計(jì)報(bào)告截止到2006年6月30日,我國網(wǎng)民人數(shù)達(dá)到了1.23億人,與2005年同期相比增長了19.4%,國內(nèi)外大批企業(yè)已經(jīng)于互聯(lián)網(wǎng)上排兵布陣,誰更好的搶占了網(wǎng)上的市場,誰就贏得了下一個(gè)階段的主動(dòng)。internet上發(fā)布信息主要是通過網(wǎng)站來實(shí)現(xiàn)的,獲取信息也是要在internet“海洋”中按照一定的檢索方式將所需要的信息從網(wǎng)站上下載下來。因此網(wǎng)頁作為信息傳遞的載體,在internet上的地位顯而易見,它已成為政府、企事業(yè)單位信息化建設(shè)中的重要組成部分,從而倍受人們的重視。由于互聯(lián)網(wǎng)這種新媒體在通訊界的地位與日俱增,因此網(wǎng)頁的開發(fā)制作有著巨大的現(xiàn)實(shí)需求。 第二章 網(wǎng)頁技術(shù)概述第一節(jié) html的網(wǎng)頁設(shè)計(jì)一、html的定義html(hyper text mark-up language)即超文本標(biāo)記語言,是www的描述語言。用于控制 web 瀏覽器(如microsoft internet explorer等)顯示文檔的方式。 用 html 標(biāo)記進(jìn)行格式編排的文檔稱為 html 文檔。html 文檔必須具有正確的格式才能被瀏覽器軟件正確識(shí)別和解釋。這類網(wǎng)頁開發(fā)基礎(chǔ)是html+script(超文本+腳本語言)。由于html是在文本文件中通過標(biāo)記來控制界面元素的顯示,因此具有良好的可移植性。通過腳本語言,可提供靈活控制的手段。在web服務(wù)器端還可以通過cgi程序或asp腳本語言,構(gòu)造三層網(wǎng)絡(luò)應(yīng)用程序,進(jìn)一步增加網(wǎng)頁的交互性。二、html網(wǎng)頁的缺陷在html文件中有許多不同的標(biāo)記,這些標(biāo)記都有它特定的位置與目的,如標(biāo)記定義了文字的字形與字號(hào),標(biāo)記則將文字的格式定義為粗體字。但是html并不完美,它只是一種表達(dá)的技術(shù),基于html的網(wǎng)頁仍然存在一些問題:1. 功能有限。html語言是一種標(biāo)記語言,其中的眾多標(biāo)記僅是一種顯示標(biāo)記,而不是內(nèi)容標(biāo)記。標(biāo)記本身不能揭示所包含內(nèi)容的含義,計(jì)算機(jī)只能根據(jù)文檔中各種標(biāo)記在網(wǎng)絡(luò)瀏覽器上產(chǎn)生特定的顯示,卻不能提取出文檔所包含的內(nèi)容信息。這一缺陷限制了網(wǎng)上的信息搜索向著更精確和更有意義的方向發(fā)展。2. 可擴(kuò)展性差。標(biāo)準(zhǔn)的html規(guī)定了固定的標(biāo)記集合,普通用戶不能定義自己的標(biāo)記。這使得html語言很難擴(kuò)展。這嚴(yán)重地限制了html語言的處理能力,許多比較特殊和具有專門格式的信息,例如化學(xué)方程式、數(shù)學(xué)公式采用html語言都是無法表達(dá)的。3. 標(biāo)準(zhǔn)性差。各個(gè)瀏覽器廠商為增強(qiáng)自己瀏覽器的功能和方便用戶的使用,一再地在自己的瀏覽器產(chǎn)品上增加新的功能,使自己的瀏覽器產(chǎn)品具有更強(qiáng)大的處理能力,甚至允許當(dāng)用戶使用不完全標(biāo)準(zhǔn)的html標(biāo)記時(shí)瀏覽器不會(huì)發(fā)生錯(cuò)誤。瀏覽器廠商對功能的擴(kuò)展使得文檔的兼容性下降,在一種瀏覽器上能夠正常顯示的html文件不一定能在另一種瀏覽器上正常顯示,這種狀況使得信息的傳播和共享受到了極大的限制。網(wǎng)頁的編輯人員必須使用microsoft internet explorer和netscape navigator都支持的標(biāo)記,否則同一個(gè)html文件在這兩種主流瀏覽器上就會(huì)得到不同的頁面效果,甚至?xí)l(fā)生錯(cuò)誤。網(wǎng)絡(luò)瀏覽器這種非標(biāo)準(zhǔn)的發(fā)展趨勢,給html文件的編輯者和使用者帶來越來越多的問題。第二節(jié) xml的網(wǎng)頁設(shè)計(jì)xml以其良好的語義及清晰的結(jié)構(gòu)受到人們的推崇,是網(wǎng)絡(luò)間進(jìn)行數(shù)據(jù)交換的理想格式。目前,世界上有很多標(biāo)準(zhǔn)化組織都在致力于基于網(wǎng)絡(luò)資源標(biāo)準(zhǔn)化的研究,并制定了一些相應(yīng)規(guī)范。下圖為標(biāo)記語言的家族:gml(1969)mathmlcmlhtml(1993)xhtml(1969)xml(1998)sgml(1985)svgwml圖2-1 標(biāo)記語言家族一、xml的定義xml是一種擴(kuò)展標(biāo)記語言,它使用有意義的標(biāo)記、具有嚴(yán)格的語法控制、將網(wǎng)頁的數(shù)據(jù)和顯示分開來。這些特性使開發(fā)者可以建立自己的有意義的標(biāo)記,來描述網(wǎng)絡(luò)信息,實(shí)現(xiàn)網(wǎng)絡(luò)信息的標(biāo)準(zhǔn)化。利用網(wǎng)頁的數(shù)據(jù)和顯示分開來的特性,可以把用xml描述的內(nèi)容用各種不同的風(fēng)格來顯示,實(shí)現(xiàn)網(wǎng)頁的個(gè)性化。二、xml的特點(diǎn)可擴(kuò)展標(biāo)記語言xml(extensible markup language)是一種源置標(biāo)語言,它正像html一樣同樣依賴于描述一定規(guī)則的標(biāo)簽和能夠讀懂這些標(biāo)簽的應(yīng)用處理工具來發(fā)揮它的強(qiáng)大功能1?,F(xiàn)在,它正影響著網(wǎng)絡(luò)軟件的設(shè)計(jì),并為world wide wet上交換信息和構(gòu)建通信基礎(chǔ)結(jié)構(gòu)提供了新的可能性。xml既是標(biāo)記語言,又是可擴(kuò)展的(extensible)標(biāo)記語言。相對于html的優(yōu)點(diǎn)是它將用戶界面與結(jié)構(gòu)化數(shù)據(jù)分隔開來。這種數(shù)據(jù)與顯示的分離使得集成不同來源的數(shù)據(jù)成為可能。xml并非像html那樣,提供了一組事先己經(jīng)定義好了的標(biāo)簽,而是提供了一個(gè)標(biāo)準(zhǔn),利用這個(gè)標(biāo)準(zhǔn),xml允許用戶創(chuàng)建自己的標(biāo)簽來標(biāo)識(shí)任意內(nèi)容文檔的任意結(jié)構(gòu),并允許我們根據(jù)它所提供的規(guī)則,制定各種各樣的標(biāo)記語言。1、擴(kuò)展性html標(biāo)記只能用來指定文字的粗體或斜體的顯示,xml卻能夠提供一個(gè)標(biāo)示結(jié)構(gòu)化數(shù)據(jù)的結(jié)構(gòu),聲明與其相關(guān)的數(shù)據(jù)為如書名、售價(jià)、經(jīng)銷商、數(shù)量或其他任何數(shù)據(jù)元素。隨著互聯(lián)網(wǎng)上許多機(jī)構(gòu)已逐漸采用xml標(biāo)記后,用戶便可以借此搜索并操作任何應(yīng)用程序中的數(shù)據(jù),一旦找到所需的數(shù)據(jù),便可借助任何方式通過網(wǎng)絡(luò)傳遞,并在瀏覽器和其他應(yīng)用程序中做進(jìn)一步的處理和檢查,只要接收數(shù)據(jù)的應(yīng)用程序可以解讀xml中的數(shù)據(jù)即可,至于數(shù)據(jù)來自何處,如何寫入xml文件中,便無關(guān)緊要了。2、數(shù)據(jù)的呈現(xiàn)與現(xiàn)實(shí)是分離的xml最主要的功能是保持使用者界面與結(jié)構(gòu)化數(shù)據(jù)的獨(dú)立,在html中會(huì)使用標(biāo)記來告訴瀏覽器將數(shù)據(jù)顯示為斜體或粗體,在xml中,可以使樣式表(xsl和css)定義數(shù)據(jù)的內(nèi)容。xml將數(shù)據(jù)的呈現(xiàn)及處理分開,讓數(shù)據(jù)的交換就像用html顯示數(shù)據(jù)一樣簡單,用xml編寫的數(shù)據(jù),可以借助網(wǎng)絡(luò)傳遞到任何地方,也不需重組數(shù)據(jù)庫或文件中的信息,只需要套用不同的樣式表和應(yīng)用程序,就可以按照希望的方式顯示并處理數(shù)據(jù)了。3、自定義xml的數(shù)據(jù)dtd會(huì)附加在xml文件中,定義元素及元素之間的結(jié)構(gòu)關(guān)系及文件規(guī)則,接受xml文件的應(yīng)用程序沒有所輸入數(shù)據(jù)的說明時(shí),dtd就可以協(xié)助識(shí)別數(shù)據(jù)。一個(gè)xml處理程序可以核對輸入的數(shù)據(jù)與dtd所定義的規(guī)則,以確認(rèn)數(shù)據(jù)結(jié)構(gòu)是否正確,由xml編寫的數(shù)據(jù)均可自定義,因?yàn)槊枋鏊璧臉?biāo)注,已經(jīng)包含在數(shù)據(jù)中了,xml是開放和具有彈性的格式,讓信息的交換與轉(zhuǎn)換更加容易。例如,xml可以用來描述html頁面,或用來描述包含在商業(yè)規(guī)則或電子商務(wù)交易中的對象數(shù)據(jù),因?yàn)閤ml有別于html,所以xml可以包含在html文件中,借助在html頁面內(nèi)嵌xml數(shù)據(jù),可以對傳遞來的數(shù)據(jù)采取不同的顯示方式。4、xml schemaschema是xml文件規(guī)則的正式陳述,也就是xml的元素名稱,它指定xml文件中所允許的元素及其可能的組合,提供和dtd相同的功能,不過,因?yàn)閟chema語言的可擴(kuò)展性,開發(fā)人員可以使用數(shù)據(jù)類型、繼承性以及呈現(xiàn)規(guī)則來加強(qiáng)schema,使schema語言的功能遠(yuǎn)比dtd更為強(qiáng)大。利用xml schema,讓xml的數(shù)據(jù)可以描述本身的結(jié)構(gòu),因此,軟件無需內(nèi)建任何數(shù)據(jù)結(jié)構(gòu)的陳述,就可以借助解讀某些數(shù)據(jù)來了解其結(jié)構(gòu)。三、xml技術(shù)詳述(一)xml文件的組成1、xml文件的基本組成xml主要的目標(biāo)之一就是提供文件數(shù)據(jù)內(nèi)容的結(jié)構(gòu)化,每一個(gè)xml文件都包含了邏輯結(jié)構(gòu)與實(shí)體結(jié)構(gòu)兩部分,在邏輯結(jié)構(gòu)中包含了文件中的元素與其結(jié)構(gòu)的層次與順序,而實(shí)體結(jié)構(gòu)則包含了文件的數(shù)據(jù)內(nèi)容,也就是通??吹降奈募袷?。2、xml文件的邏輯結(jié)構(gòu)邏輯結(jié)構(gòu)是指文件中各個(gè)不同元素的組織結(jié)構(gòu),邏輯結(jié)構(gòu)代表文件構(gòu)建的原則,一份完整的xml由聲明、元素、處理指令與注釋組成,其中有一些是可選擇的對象,有一些是必要的對象,但通常可以將xml文件分成文件頭與文件主體兩部分。(1)文件頭xml文件頭是由兩個(gè)基本組件所組成:xml聲明與dtd文件類型聲明a、xml聲明下面是一段xml聲明,xml聲明定義了文件所遵守xml規(guī)格的版本。在這一行xml聲明的程序代碼中,version=1.0表示該文件遵守xml1.0的規(guī)范。encoding=gb2312表示如果在該文件中用到中文內(nèi)容,就必須加上中文編碼。standalone=yes表示該文件不會(huì)引用其他文件。b、dtd聲明dtd聲明必須編寫在xml聲明與文件主體之間,用于定義該文件中數(shù)據(jù)結(jié)構(gòu)的規(guī)則。若dtd文件類型定義是直接編寫在xml文件頭去中,使用內(nèi)部dtd聲明的方式來聲明這些定義,不會(huì)引用到其他的文件,所以在xml聲明中可以加上standalone=yes。dtd文件類型聲明也可以指向一個(gè)包含所有或部分dtd文件類型聲明的外部文件,這樣的方式能夠簡化xml文件的復(fù)雜程度,當(dāng)文件類型變更時(shí)只需要修改這個(gè)外部文件即可,不必去修改所有xml文件中的dtd聲明,以達(dá)到快速開發(fā)與方便維護(hù)的目的。(2)文件主體文件主體是用來存放數(shù)據(jù)內(nèi)容的區(qū)域。xml文件中可以被應(yīng)用程序運(yùn)用的數(shù)據(jù)都在文件主體中。所謂元素,也就是標(biāo)記的名稱,如與是開始與結(jié)束標(biāo)記,而book則為元素,所以可以通過dtd中對元素的定義來控制標(biāo)記的運(yùn)用。3、xml文件的實(shí)體結(jié)構(gòu)xml文件的實(shí)體結(jié)構(gòu)是由文件中的內(nèi)容所組成的,每個(gè)實(shí)體都有其名稱與內(nèi)容,實(shí)體可能只是文件中的一個(gè)代表字符,也可能是一個(gè)外部的文件,從邏輯結(jié)構(gòu)來看,實(shí)體是先在文件頭中被聲明,然后在元素中被參照,只要是在dtd聲明過,實(shí)體就可以在文件中被使用,而實(shí)體的參照會(huì)告訴處理器去取得實(shí)體的內(nèi)容,并在文件中使用。(二)xml文檔的類型基本上有兩類相關(guān)的xml文檔:構(gòu)造良好的(well-formed)xml文檔和有效的(valid)xml文檔。本節(jié)主要介紹構(gòu)造良好的xml文檔應(yīng)該滿足的標(biāo)準(zhǔn),簡單地介紹了什么是有效的xml文檔,以及用什么方式判斷一個(gè)xml文檔是一個(gè)有效的xml文檔。1、構(gòu)造良好的xml文擋 構(gòu)造良好的xml文檔遵守xml語法的一般規(guī)則,這些規(guī)則比html和sgml的更為嚴(yán)格。xml文件所有的標(biāo)記都必須有結(jié)束標(biāo)記,如成對出現(xiàn)的結(jié)束標(biāo)識(shí)符,或者在右尖括弧前帶有一個(gè)斜杠的空元素標(biāo)記,即空標(biāo)記,如。xml標(biāo)識(shí)總是以左尖括弧或開始,元素類型和屬性名稱是大小寫區(qū)分的,屬性需要引號(hào)等等。下面將通過簡單的實(shí)例闡述構(gòu)造良好的xml文檔有哪幾個(gè)方面的要求。(1)文件必須以xml聲明開始(2)含有數(shù)據(jù)的元素必須有開始和結(jié)束標(biāo)記(3)空標(biāo)記的元素必須以/作結(jié)束(4)文件必須有一個(gè)根元素(5)屬性值必須使用引號(hào)(6)字符只能用在標(biāo)記中,而&字符只能用在尸體參照中2、構(gòu)造有效的xml文檔一個(gè)有效的xml文件必須嚴(yán)格遵守xml所有的規(guī)范,也必須遵守xml規(guī)格書中對有效文件所規(guī)定的所有限制,所以xml處理器必須了解xml規(guī)格書中的有效性限制,并檢查文件中任何可能違反限制的情況,若是發(fā)現(xiàn)錯(cuò)誤,必須將錯(cuò)誤信息傳送給前端的應(yīng)用程序。除此之外,xml處理器必須依據(jù)dtd中所制定的規(guī)則檢查xml文件的有效性,這樣的檢查與處理須花上許多時(shí)間,而且也不一定是必要的,所以xml只會(huì)支持符和規(guī)格文件的概念。3、使現(xiàn)存html網(wǎng)頁符合xml標(biāo)準(zhǔn)規(guī)格目前互聯(lián)網(wǎng)上許多網(wǎng)頁的設(shè)計(jì)都十分粗糙,是因?yàn)闆]有采用xml,若按如下方式修正了錯(cuò)誤,就會(huì)讓網(wǎng)頁變得整齊、顯示速度更快而且更容易維護(hù):(1)結(jié)束所有的開始標(biāo)記(2)刪除單獨(dú)的標(biāo)記,而且不要讓元素交錯(cuò)重疊(3)為屬性加上引號(hào)(4)使用根元素(5)所有的標(biāo)記都使用同樣的大小寫格式(6)關(guān)閉空標(biāo)記(7)加上xml聲明(三)dtd文件類型定義dtd(文件類型定義)提供了所有元素、屬性與實(shí)體間的相互關(guān)系,dtd能夠詳細(xì)的描述文件的結(jié)構(gòu)規(guī)則。例如,dtd可以指定一個(gè)book元素中只能有一個(gè)name子元素和price子元素,但是可以有一個(gè)或一個(gè)以上的writer子元素,而introduction子元素則是可有可無的。dtd是以一連串的標(biāo)記的定義來完成這些元素、實(shí)體或?qū)傩缘娘@示。1、為什么使用dtddtd可以被直接嵌入到所描述的文件中,也可以利用外部鏈接來使用,其中使用外部鏈接的dtd可以讓網(wǎng)站上的xml文件共用同一個(gè)dtd規(guī)則,這樣的文件類型已得到網(wǎng)上許多組織團(tuán)體的認(rèn)同2,因此使dtd逐漸成為網(wǎng)絡(luò)文件類型定義的新標(biāo)準(zhǔn)。dtd使編寫的程序能夠識(shí)別從其他的地方傳來的文件。例如,如果醫(yī)療單位規(guī)定通用一種符合dtd的病歷表示法,那么所有的醫(yī)療機(jī)構(gòu)就能看得懂其他以醫(yī)療單位所制作的病歷,當(dāng)病人在外地或其他醫(yī)療機(jī)構(gòu)求診時(shí),醫(yī)師們就能夠通過網(wǎng)絡(luò)馬上取得患者過去的病歷數(shù)據(jù),做更有效的診斷與處理。dtd定義出了什么應(yīng)該、什么不應(yīng)該出現(xiàn)在文件之中,同時(shí)也建立出編輯器必須支持瀏覽或編輯元素所需要的標(biāo)準(zhǔn),更重要的是它還建立出延伸的部分與被dtd判為無效的部分,這樣就能避免軟件供應(yīng)商把持這些原本應(yīng)該要開放的協(xié)定而壟斷市場。2、dtd的優(yōu)點(diǎn)使用dtd文件類型可以達(dá)到文件數(shù)據(jù)結(jié)構(gòu)與格式的統(tǒng)一,這在許多應(yīng)用上是相當(dāng)重要的,因?yàn)槌四軌虼_保文件結(jié)構(gòu)與格式正確外,它還可以避免數(shù)據(jù)的遺漏。(1)可重復(fù)使用當(dāng)文件類型定義好之后,就像一張藍(lán)圖,可以被重復(fù)使用,建立相同類型的文件,降低xml文件的創(chuàng)建成本。不過,想要定義一份完整性高、適用性廣的文件類型,并不是一件輕松的工作,往往需要很高的代價(jià)與很多的時(shí)間做統(tǒng)一與整合的工作,所以通常都是以特定的應(yīng)用領(lǐng)域?yàn)槎x范圍。(2)繼承關(guān)系稱父對象為基礎(chǔ)類別,以此基礎(chǔ)類別作為建立其他對象的基礎(chǔ),用這種方式延伸出來的對象稱為子類別,可以建立無數(shù)的子類別,也可以建立子類別別的子類別,這樣,便可以重復(fù)使用已經(jīng)存在的功能與特性,也可以修改以符合特殊需要,節(jié)省了許多編寫與測試的時(shí)間。(四)xsl文件的描述擴(kuò)展樣式語言(extensible stylesheet language)簡稱xsl,是針對xml文件所建立的格式化語言,也可以說是xml的一種延伸應(yīng)用,所以xsl在結(jié)構(gòu)和語法上都與xml十分相似,用來定義xml文件之間如何轉(zhuǎn)換的規(guī)則。變形之后的xml文件可以使用原始文件中的markup和文件類型定義,也可以使用一組完全一致的標(biāo)記。1、為什么要使用xslxsl是為xml文件定義的一種標(biāo)記語言,它將提供遠(yuǎn)遠(yuǎn)超過css的強(qiáng)大功能,如將元素再排序等。實(shí)際上,簡單的xml已可用css來解釋,然而復(fù)雜度較高的結(jié)構(gòu)化xml數(shù)據(jù)或xml文件只能依賴于xsl的極強(qiáng)的格式化能力展現(xiàn)給用戶。xsl樣式表集合了一系列設(shè)計(jì)規(guī)則,以用于從xml文件中提取出信息,并將其轉(zhuǎn)換成html等其他格式。這種轉(zhuǎn)換將采用一種公開的方式,使其更加容易方便地被程序員描述。而且,xsl還將提供多種腳本語言的通道以滿足更為復(fù)雜的應(yīng)用需求。盡管xsl是一項(xiàng)新的標(biāo)記語言,但程序員完全可以繼續(xù)充分發(fā)揮其所熟悉的html或腳本語言的優(yōu)勢。xsl憑借其可擴(kuò)展性能夠控制無窮無盡的標(biāo)簽,而控制每個(gè)標(biāo)簽的方式也是不受限制的,這就給web提供了高級(jí)的格式特性,例如旋轉(zhuǎn)的文本、多列和獨(dú)立區(qū)域。它支持國際書寫格式,可以在一頁上混合使用從左至右、從右至左和從上至下的書寫格式3。2、xsl轉(zhuǎn)換對xml提出的要求:第一,允許顯示xsl轉(zhuǎn)換語言。允許通過將xml轉(zhuǎn)換為符合顯示要求的語法和結(jié)構(gòu),或者轉(zhuǎn)換成html以及xsl格式化對象語言來使xml數(shù)據(jù)的顯示成為可能。第二,直接瀏覽xml文檔。ie 5能應(yīng)用xsl形式來產(chǎn)生html文檔,允許直接瀏覽xml文件。第三,內(nèi)容遞送給下級(jí)瀏覽者。xsl轉(zhuǎn)換語言能在服務(wù)器上執(zhí)行,以向客戶級(jí)瀏覽者提供xml文檔。第四,通過查詢、排序、過濾轉(zhuǎn)換xml文檔。轉(zhuǎn)換語言能被用在一個(gè)單一的語法中實(shí)現(xiàn)包括過濾、排序、匯總數(shù)據(jù)等多用途的轉(zhuǎn)換。3、xsl處理器轉(zhuǎn)換示意圖xslxmlxslxsl處理器xsl處理器html瀏覽器顯示文檔內(nèi)容圖2-2 xsl處理器轉(zhuǎn)換示意圖4、xsl的作用基于xml的數(shù)據(jù)xsl處理html/css或其它的表現(xiàn)形式xsl樣式表圖2-3 xsl的作用(五)xml鏈接技術(shù)web迅速發(fā)展和普及的一個(gè)重要因素是html的應(yīng)用。而html真正強(qiáng)勁的地方在于它在文檔中可嵌入超文本鏈接。這些可以嵌入影像或讓用戶從一個(gè)html頁面到另一個(gè)頁面的鏈接,這種鏈接定義兩個(gè)文檔之間的關(guān)系。這給用戶提供了一種從當(dāng)前頁面中獲得更多相關(guān)數(shù)據(jù)的途徑。同時(shí),這也是用戶在查詢數(shù)據(jù)中所使用的典型方法。為了查找數(shù)據(jù),用戶瀏覽某頁面,同時(shí)在該頁面中可能會(huì)發(fā)現(xiàn)更符合其要求的內(nèi)容,而這些內(nèi)容通過一個(gè)鏈接存放在不同的頁面上。而xml提供了超越html語言的強(qiáng)大的文檔鏈接能力,使人們可以創(chuàng)建資源多相和復(fù)雜的鏈接,并可以輕松的定位文檔的片斷。xml的鏈接技術(shù)分為兩部分:xlink和xpointer,xlink(xml linking language,xml鏈接語言)定義一文檔如何與另一文檔的鏈接,而xpointer(即xml pointer language,xml指針語言)定義文檔的各部分如何尋址。xlink中定義了兩種鏈接,既簡單鏈接和擴(kuò)展鏈接,簡單鏈接類似于html中的超鏈接,而擴(kuò)展鏈接功能十分強(qiáng)大。擴(kuò)展鏈接可以提供多個(gè)鏈接目標(biāo),通過在擴(kuò)展鏈接元素中插入locator子元素實(shí)現(xiàn)。每個(gè)locator元素都指定一個(gè)超鏈接資源。通過樣式表,可以制作出友好的多超鏈接界面,如:單擊某段文本,就彈出一個(gè)下拉菜單,列出所有的相關(guān)鏈接,供讀者讀取。(六)xml文件對象模型dom1、什么是domdom(document object model)是書寫xml分析器的接口標(biāo)準(zhǔn)。它可以使用不同的對象來代替xml文檔的不同組成部分,利用這些對象的方法和屬性來創(chuàng)建訪問鏈接到web網(wǎng)頁中的xml文檔。該對象庫還可以讓用戶構(gòu)建xml語法樹,并提供了更有效的方法來創(chuàng)建xml文檔。例如,用戶可以用dom搜集來自不同位置的數(shù)據(jù),或者根據(jù)不同種類的數(shù)據(jù)源來自動(dòng)創(chuàng)建xml文檔。下圖為dom在應(yīng)用程序開發(fā)過程中所處地位的示意圖:xml文檔xml分析器dom接口xml應(yīng)用程序圖2-4 dom在應(yīng)用程序開發(fā)過程中所處地位從圖中可以看出,應(yīng)用程序并不是直接對xml文檔進(jìn)行操作的,而是首先由xml分析器對xml文檔進(jìn)行分析,然后,應(yīng)用程序通過xml分析器所提供的dom接口對分析結(jié)果進(jìn)行操作,從而間接地實(shí)現(xiàn)了對xml文檔的訪問。由于w3c把dom定義為一套抽象的類而非正式實(shí)現(xiàn)dom,因此,由獨(dú)立的開發(fā)商來提供在具體平臺(tái)和開發(fā)語言下標(biāo)準(zhǔn)接口的實(shí)現(xiàn),所以,其具體實(shí)現(xiàn)在不同的平臺(tái)或語言處理系統(tǒng)中是不同的。2、dom的使用對于一個(gè)格式規(guī)范的xml文檔,dom是一個(gè)應(yīng)用程序接口,它定義了文檔的邏輯結(jié)構(gòu)以及訪問和操作該文檔的方式。使用dom,應(yīng)用程序開發(fā)人員可以創(chuàng)建文檔,遍歷文檔的結(jié)構(gòu),增加、修改或者刪除元素及其內(nèi)容4。dom是一個(gè)文檔對象模型,dom中的對象特征允許應(yīng)用程序和腳本動(dòng)態(tài)地訪問并更新文檔的內(nèi)容、結(jié)構(gòu)與樣式。通過dom節(jié)點(diǎn)對象樹來訪問樹中的任何一個(gè)節(jié)點(diǎn),就是通過dom樹對xml文檔的遍歷。3、sax接口與dom接口比較sax(xml簡單應(yīng)用編程接口)利用基于事件的方式來處理xml文檔?;谑录侵竤ax為開發(fā)者提供處理特定元素的方法,而不必要求在應(yīng)用層次中處理之前預(yù)建的元素。這帶來的好處是沒有必要的結(jié)構(gòu)將不被創(chuàng)建;作為代替,將在任何感興趣的事件發(fā)生時(shí),調(diào)用應(yīng)用程序源代碼。sax不僅在處理元素子集時(shí)特別有效,而且是處理大規(guī)模xml文檔的有用工具。如果需要處理所有的元素,會(huì)碰到內(nèi)存問題,因?yàn)榻⒈姸鄬ο笫趾馁M(fèi)內(nèi)存。而sax不必建立所有的元素,處理過程將實(shí)時(shí)進(jìn)行,這與大量的傳遞調(diào)用正好相反。sax被提出的原因是解決一些不使用的dom接口,它們的實(shí)現(xiàn)過于龐大且比較慢。dom是基于樹型結(jié)構(gòu)的,得到w3c推薦并符合api標(biāo)準(zhǔn)的接口規(guī)范。而sax是由事件驅(qū)動(dòng),并有廣泛支持api標(biāo)準(zhǔn)的接口規(guī)范。dom適合于結(jié)構(gòu)化編輯xml文檔,如排序、記錄移動(dòng)和其它應(yīng)用程序共享xml文檔操作。而sax效率高(不創(chuàng)建顯示數(shù)據(jù)結(jié)構(gòu)),適合大文檔,內(nèi)存與結(jié)構(gòu)無關(guān)的任務(wù),如計(jì)算xml文檔節(jié)點(diǎn)數(shù)或提取特定節(jié)點(diǎn)內(nèi)容5。從上述可以看出,凡是sax可以做的工作dom都可以做,但是由于dom是整體裝入來處理xml文檔,因此對系統(tǒng)資源的占用很大,尤其是處理大量文檔時(shí)更加明顯,所以采用dom模型往往給服務(wù)器端帶來很繁重的任務(wù)。而對于sax來說,dom的很多工作它很難完成,如排序、移動(dòng)等,因?yàn)樗鄙賹τ趚ml文檔的整體視圖,所以這就要求在采用sax之前,必須確定自己的應(yīng)用是否適合于sax的內(nèi)容。(七)xml的開發(fā)工具開發(fā) xm l有許多工具可以使用: notepad:最直接、最簡單的文本編輯工具,在windows附件中就可找到。 microsoft xml notepad: 微軟專門為設(shè)計(jì)xml文檔而提供的編輯軟件,可以借助它驗(yàn)證xml文檔的有效性。 microsoft xml tree viewer: 利用這個(gè)軟件可以把xml文檔的內(nèi)容用樹的結(jié)構(gòu)形式顯示出來。 microsoft xml validator: 該軟件可以檢查xml文檔是否是“格式良好的”以及其有效性,并對錯(cuò)誤發(fā)出警告。 microsoft xsl debugger: 樣式單文件的復(fù)雜性使開發(fā)人員在編寫時(shí)容易出現(xiàn)錯(cuò)誤,這個(gè)軟件就是幫助用戶調(diào)試樣式單文件的,把復(fù)雜枯燥的調(diào)試過程用可視化界面顯示出來。 wordperfect: 一種對開發(fā)xml和sgml提供高級(jí)支持的文字處理器,具有所見即所得的開發(fā)環(huán)境,提供向?qū)?、自?dòng)化控件的插入和文檔的自動(dòng) 生 成 等功能,它是一款收費(fèi)的商業(yè)產(chǎn)品,支持windows9 5/98/2000和linux平臺(tái)。 sixpack: 為xml的解析和開發(fā)提供簡潔的界面,支持macintosh平臺(tái),并公開源代碼。 xmlspy: xmlspy是所有xml編輯器中做得非常好的一個(gè)軟件,支持wyswyg。支持unicode、多字符集,支持well-formed和validated兩種類型的xml文檔,支持newsml等多種標(biāo)準(zhǔn)xml文檔的所見即所得的編輯,同時(shí)提供了強(qiáng)有力的樣式表設(shè)計(jì)。下圖為xmlspy的界面窗口:圖2-5 xmlspy的界面窗口第三節(jié) 動(dòng)態(tài)網(wǎng)頁一、動(dòng)態(tài)網(wǎng)頁概念靜態(tài)網(wǎng)站是網(wǎng)站建設(shè)初期經(jīng)常采用的一種形式。網(wǎng)站建設(shè)者把內(nèi)容設(shè)計(jì)成靜態(tài)網(wǎng)頁,訪問者只能被動(dòng)地瀏覽網(wǎng)站建設(shè)者提供的網(wǎng)頁內(nèi)容。靜態(tài)網(wǎng)站的工作方式:當(dāng)客戶端向網(wǎng)站服務(wù)器提出請求,服務(wù)器就把請求的內(nèi)容傳送給用戶瀏覽器,并由用戶瀏覽器負(fù)責(zé)顯示請求結(jié)果。用這種方式組建的網(wǎng)站,當(dāng)網(wǎng)站設(shè)計(jì)人員把網(wǎng)站的設(shè)計(jì)方案提交并付諸實(shí)現(xiàn)后,網(wǎng)站的內(nèi)容就不再會(huì)有任何變化。無論用戶從何地何時(shí)提交請求所得到的結(jié)果都是一樣的。每當(dāng)需要修改的時(shí)候,網(wǎng)站設(shè)計(jì)者就必須要修改所有涉及到的網(wǎng)頁,這就大大增加了系統(tǒng)維護(hù)的開銷,也使得一般非專業(yè)人士對網(wǎng)站的更新維護(hù)比較困難6。所謂“動(dòng)態(tài)”,并不是指那幾個(gè)放在網(wǎng)頁上的gif 動(dòng)態(tài)圖片,它應(yīng)該滿足以下幾條規(guī)則:1、“交互性”。即網(wǎng)頁會(huì)根據(jù)用戶的要求和選擇而動(dòng)態(tài)改變和響應(yīng),將瀏覽器作為客戶端界面,即軟件的web 集成,這將是今后web發(fā)展的大趨勢。2、“自動(dòng)更新”。即無需手動(dòng)地更新html文檔,便會(huì)自動(dòng)生成新的頁面,可以大大減少工作量。3、“因時(shí)因人而變”。即當(dāng)不同的時(shí)間、不同的人訪問同一網(wǎng)址時(shí)會(huì)產(chǎn)生不同的頁面。4、網(wǎng)站的數(shù)據(jù)資料設(shè)計(jì)成全部或大部分從數(shù)據(jù)庫中動(dòng)態(tài)的取得,且數(shù)據(jù)庫對于使用者完全透明。二、動(dòng)態(tài)網(wǎng)頁技術(shù)(一)asp簡介asp是active server pages的簡稱,是微軟公司開發(fā)的服務(wù)器腳本編寫環(huán)境,asp內(nèi)嵌于iis中,它除了內(nèi)置的request對象、response對象、server對象、session對象、application對象及objectcontext對象等基本對象外,還允許以外掛的方式使用activex控件,它是結(jié)合markup標(biāo)簽語言(如html或者xml)和腳本語言(如vbscript或javascript)及activex來處理的一種動(dòng)態(tài)、交互的頁面,可以使用某種類型的中間應(yīng)用程序或插件程序來連接。它能夠接受用戶請求,讀取并解釋合適的基于服務(wù)器的腳本文件;接著創(chuàng)建輸出頁,并傳送給web服務(wù)器;最后作為響應(yīng)發(fā)給客戶端7。因此我們可以使用asp來創(chuàng)建動(dòng)態(tài)的web頁面,從而開發(fā)出強(qiáng)大的web應(yīng)用程序。(二)asp的web數(shù)據(jù)庫訪問技術(shù)asp是功能強(qiáng)大的服務(wù)器端腳本編程環(huán)境,利用asp內(nèi)置ado對象組件,可以輕松地存取各種數(shù)據(jù)庫。asp對數(shù)據(jù)庫訪問的執(zhí)行過程如下:瀏覽器向web服務(wù)器提出asp頁面文件請求,服務(wù)器將該頁面由asp.dll進(jìn)行解釋并在服務(wù)器端執(zhí)行,通過啟動(dòng)odbc驅(qū)動(dòng)程序或使用專用接口完成對數(shù)據(jù)庫的訪問,并生成動(dòng)態(tài)的網(wǎng)頁返回給瀏覽器,瀏覽器再將該網(wǎng)頁顯示在客戶端屏幕上。其執(zhí)行原理如圖:圖2-6 asp工作原理(三)asp具有以下特色:1、易用性使用vbscript、javascript等簡單易學(xué)的腳本語言,結(jié)合html代碼,即可快速的完成網(wǎng)絡(luò)應(yīng)用程序,不需要編譯,可在服務(wù)器端直接執(zhí)行。使用普通的記事本即可以進(jìn)行編輯設(shè)計(jì)。2、兼容性asp能與任何activex語言兼容。3、安全性asp的源程序不會(huì)被傳到客戶瀏覽器,提高了程序的安全性。4、可擴(kuò)充性asp具有無限可擴(kuò)充性,可以使用visual basic、java、visual basic c+等編程語言來編寫所需要的服務(wù)器控件。asp的具體執(zhí)行過程如下:1、用戶在瀏覽器的地址欄中鍵入asp文件,并回車觸發(fā)這個(gè)asp申請。2、瀏覽器將這個(gè)asp的請求發(fā)送給web服務(wù)器。3、web server接收這些申請并根據(jù).asp的后綴名判斷這是.asp要求。web server從硬盤或內(nèi)存中讀取正確的asp文件。4、web server將這個(gè)文件發(fā)送到名為asp.dll的待定文件中。5、asp文件將會(huì)從頭至尾執(zhí)行并根據(jù)命令要求生成相應(yīng)的html文件。6、html文件被送回瀏覽器。7、用戶的瀏覽器解釋執(zhí)行這些html文件并將結(jié)果顯示出來。三、基于xml的動(dòng)態(tài)網(wǎng)頁xml的優(yōu)勢之一是內(nèi)容和樣式的分離。 xml既可以通過統(tǒng)一的數(shù)據(jù)結(jié)構(gòu)傳輸和處理數(shù)據(jù),非常方便的實(shí)現(xiàn)數(shù)據(jù)交換,而且在用戶本地,又可以根據(jù)不同的需要將這些數(shù)據(jù)以不同的形式表現(xiàn)出來。從而對數(shù)據(jù)內(nèi)容本身和數(shù)據(jù)的外在的表現(xiàn)形式分別加以描述?;趚ml動(dòng)態(tài)網(wǎng)頁的特點(diǎn)就是利用xml語言的內(nèi)容格式的分開來處理網(wǎng)頁信息做到的,我們可以利用xml文檔來存儲(chǔ)網(wǎng)頁的文字和圖像等一切信息,可以用css或者xsl來存儲(chǔ)網(wǎng)頁的格式信息。xml文檔內(nèi)容的基本單元元素,它的語法格式如下:文本內(nèi)容元素是由起始標(biāo)簽、元素內(nèi)容和結(jié)束標(biāo)簽組成。用戶把要描述的數(shù)據(jù)對象放在起始標(biāo)簽和結(jié)束標(biāo)簽之間。如:動(dòng)態(tài)網(wǎng)頁教程。xml元素中還可以再嵌套別的元素,這樣使相關(guān)信息構(gòu)成等級(jí)結(jié)構(gòu)。除了元素,xml文檔中能出現(xiàn)的有效對象是:處理指令、注釋、根元素、子元素和屬性。處理指令給xml解析器提供信息,使其能夠正確解釋文檔內(nèi)容,它的起始標(biāo)識(shí)是“”。常見的xml聲明就是一個(gè)處理指令:處理指令還可以有其他的用途,比如定義文檔的編碼方式是gb碼還是unicode編碼方式,或是把一個(gè)樣式單文件應(yīng)用到xml文檔上用以顯示注釋是xml文件中用作解釋的字符數(shù)據(jù),xml處理器不對它們進(jìn)行任何處理。注釋是用“”引起來的,可以出現(xiàn)在xml元素間的任何地方,但是不可以嵌套。根元素和子元素:如果一個(gè)元素從文件頭的序言部分之后開始一直到文件尾,包含了文件中所有的數(shù)據(jù)信息,我們稱之為根元素。xml元素是可以嵌套的,被嵌套在內(nèi)的元素稱為子元素。屬性給元素提供進(jìn)一步的說明信息,它必須出現(xiàn)在起始標(biāo)簽中。屬性以名稱/取值成對出現(xiàn),屬性名不能重復(fù),名稱與取值之間用等號(hào)“=”分隔,并用引號(hào)把取值引起來。如: 25000,其中的屬性currency說明了薪水的貨幣單位是美元。xm l文檔的基本結(jié)構(gòu)由序言部分和一個(gè)根元素組成。序言包括了xml聲明和dtd(或者是xml schema), dtd (document type define,文檔定義類型)和xml schema都是用來描述xml文檔結(jié)構(gòu)的,也就是描述元素和屬性是如何聯(lián)系在一起的。在上述xml的文檔前面加上如下的序言部分,就構(gòu)成了一個(gè)完整的xml文檔:一個(gè)xml文檔中有且僅有一個(gè)根元素,其他所有的元素都是它的子元素。一個(gè)xml文檔首先應(yīng)當(dāng)是“格式良好的”(well-formed),該規(guī)定的正式定義位于:/tr/rec-xml利用css層疊樣式表:xml 所關(guān)注的是對內(nèi)容的描述,不能直接在瀏覽器中顯示。要在瀏覽器中顯示xml文檔,必須為它添加樣式單(style sheet)。樣式單是一種專門描述結(jié)構(gòu)文檔表現(xiàn)方式的文檔,它既可以描述這些文檔如何在屏幕上顯示,也可以描述它們的打印效果,甚至聲音效果等。樣式單一般不包含在xml文檔內(nèi)部,而以獨(dú)立的文檔存在。與html描述數(shù)據(jù)顯示方式的傳統(tǒng)方法相比,樣式單有表達(dá)效果豐富、文檔體積小,便于信息檢索、可讀性好等優(yōu)點(diǎn)。一個(gè)樣式單可作用于多個(gè)xml文檔,一個(gè)xml文檔也可使充。css并不是一種程序設(shè)計(jì)語言,而只是一種用于網(wǎng)頁排版的標(biāo)記性語言,其全部信息都是以純文本的形式存儲(chǔ)在一個(gè)文檔中,因此,可以使用記事本來編輯css文檔。css不但增強(qiáng)html的表現(xiàn)能力,而且能夠用來表現(xiàn)xmlcss的特點(diǎn):自從css出現(xiàn)以后,其豐富的表現(xiàn)功能和靈活多變的實(shí)現(xiàn)機(jī)制立即得到廣大網(wǎng)頁設(shè)計(jì)人員的青睞。第三章 xml網(wǎng)頁設(shè)計(jì)的實(shí)現(xiàn)第一節(jié) 網(wǎng)站前臺(tái)展示前臺(tái)頁面設(shè)計(jì)如下圖:圖3-1 前臺(tái)界面前臺(tái)功能結(jié)構(gòu)圖:首頁美麗校園激情綠茵流行音樂七彩假日精彩圖文信息導(dǎo)航進(jìn)入論壇管理登陸填寫用戶信息網(wǎng)友留言管理登陸留言管理圖3-2 前臺(tái)功能結(jié)構(gòu)圖第二節(jié) 網(wǎng)站后臺(tái)頁面后臺(tái)頁面設(shè)計(jì)如下圖:圖3-3 后臺(tái)界面后臺(tái)功能結(jié)構(gòu)圖:后臺(tái)欄目修改登陸密碼用戶管理投票管理信息管理添加修改刪除添加修改刪除圖3-4 后臺(tái)功能結(jié)構(gòu)圖第三節(jié) 數(shù)據(jù)庫的設(shè)計(jì)表3-1新聞公告表表3-2創(chuàng)建投票表表3-3投票選項(xiàng)表第四節(jié) 子功能模塊處理一、管理員登陸登陸要考慮到安全問題,本網(wǎng)站從結(jié)構(gòu)設(shè)計(jì)上為安全提供第一位的保證。所有密碼使用md5不可逆加密,為整個(gè)系統(tǒng)的安全做好了充分有效的保障。同時(shí)系統(tǒng)設(shè)計(jì)了修改密碼的功能,修改密碼功能考慮了校驗(yàn)和安全性。比如說,原密碼輸入錯(cuò)誤會(huì)彈出對話框,兩密碼輸入不一致會(huì)彈出對話框等。如下圖:圖3-5 管理員修改密碼界面修改密碼的代碼實(shí)現(xiàn):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(原密碼錯(cuò)誤,請返回重新輸入);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二、投票的添加修改與管理為了能夠多角度的了解網(wǎng)站瀏覽者對該網(wǎng)站的意見及網(wǎng)站各種信息的看法,網(wǎng)站設(shè)置了投票功能。用戶可以根據(jù)自己的意愿進(jìn)行選擇,投票方法方便快捷,并設(shè)置了查看按鈕,投票結(jié)果一目了然,及時(shí)了解所有投票者的觀點(diǎn)。投票包括單選和復(fù)選兩種方式,投票信息將會(huì)保存在access數(shù)據(jù)庫中。管理員可通過后臺(tái)對投票進(jìn)行添加、修改和刪除。如下圖:圖3-6 投票的添加修改與管理代碼如下:if request(id)del thenerr=0title=request(title)if title= thenerr=1error=error+標(biāo)題不能為空nend ifa=0for i=1 to request(xz).countif request(xz)(i)= thenexit forend ifa=a+1nextif a=0 thenerr=1error=error+選擇內(nèi)容不能為空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. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《深圳大學(xué)圖書館》課件
- 《電子服務(wù)概論》課件
- 2024屆安徽省部分學(xué)校高三上學(xué)期期末考試歷史試題(解析版)
- 2024年遼寧輕工職業(yè)學(xué)院單招職業(yè)技能測試題庫完整答案
- 單位管理制度集粹選集【人事管理篇】十篇
- 單位管理制度匯編大全【員工管理篇】
- 單位管理制度合并選集職工管理篇
- 《法國雪鐵龍公園》課件
- 單位管理制度分享合集【職工管理篇】
- 單位管理制度呈現(xiàn)大全【職工管理】十篇
- 江西省景德鎮(zhèn)市2023-2024學(xué)年高二上學(xué)期1月期末質(zhì)量檢測數(shù)學(xué)試題 附答案
- 2024年辦公樓衛(wèi)生管理制度模版(3篇)
- 船舶防火與滅火(課件)
- 保險(xiǎn)公司2024年工作總結(jié)(34篇)
- 2024年01月22503學(xué)前兒童健康教育活動(dòng)指導(dǎo)期末試題答案
- 湖北省荊州市八縣市2023-2024學(xué)年高一上學(xué)期1月期末考試 化學(xué) 含解析
- 2024年世界職業(yè)院校技能大賽中職組“嬰幼兒保育組”賽項(xiàng)考試題庫-上(單選題)
- 《水文化概論》全套教學(xué)課件
- 期末測評(基礎(chǔ)卷二)-2024-2025學(xué)年一年級(jí)上冊數(shù)學(xué)人教版
- 深圳大學(xué)《數(shù)值計(jì)算方法》2021-2022學(xué)年第一學(xué)期期末試卷
- 社區(qū)共享菜園建設(shè)方案及實(shí)施計(jì)劃
評論
0/150
提交評論