- 校園網(wǎng)站設(shè)計(jì) 推薦度:
- 相關(guān)推薦
校園網(wǎng)站設(shè)計(jì)
目 錄第一章:諸論………………………………………………………………..1
1.1 設(shè)計(jì)思想……………………………………………………………………………………1
1.2 開(kāi)發(fā)工具的選用及介紹……………………………………………………………………….1
第二章:網(wǎng)站總體分析與設(shè)計(jì) 2
2.1網(wǎng)站系統(tǒng)分析………………………………………………………………………………………….2
2.2、主頁(yè)設(shè)計(jì) 3
2.3、數(shù)據(jù)庫(kù)設(shè)計(jì) 4
第三章:詳細(xì)設(shè)計(jì) 4
3.1 家長(zhǎng)學(xué)校聯(lián)絡(luò)簿………………………………………………4
3.2 網(wǎng)上圖書(shū)館 11
3.3 網(wǎng)上評(píng)優(yōu)投票系統(tǒng) 20
3.4達(dá)級(jí)考試在線查分系統(tǒng)與計(jì)數(shù)器的制作………………………22.
第四部分:系統(tǒng)的使用說(shuō)明與安裝 25
第五部分:參考文獻(xiàn): 26
附錄:源文件代碼 27
第一章 諸論
在Internet飛速發(fā)展的今天,互聯(lián)網(wǎng)成為人們快速獲取、發(fā)布和傳遞信息的重要渠道,它在人們政治、經(jīng)濟(jì)、生活等各個(gè)方面發(fā)揮著重要的作用。Internet上發(fā)布信息主要是通過(guò)網(wǎng)站來(lái)實(shí)現(xiàn)的,獲取信息也是要在Internet“海洋”中按照一定的檢索方式將所需要的信息從網(wǎng)站上下載下來(lái)。因此網(wǎng)站建設(shè)在Internet應(yīng)用上的地位顯而易見(jiàn),它已成為政府、企事業(yè)單位信息化建設(shè)中的重要組成部分,從而倍受人們的重視。為了更好的辦學(xué),提高學(xué)校知名度,特構(gòu)建長(zhǎng)沙市工商職業(yè)中專(zhuān)學(xué)校網(wǎng)站。
1. 1 設(shè)計(jì)思想
通過(guò)網(wǎng)站,全面宣傳,展示學(xué)校風(fēng)采、優(yōu)點(diǎn)與特色,發(fā)布學(xué)校的重大活動(dòng)安排與招生政策,增強(qiáng)家長(zhǎng)與學(xué)校之間的聯(lián)系,在Internet上實(shí)現(xiàn)完成部分校務(wù),提高辦事效率。
1.2 開(kāi)發(fā)工具的選用及介紹
ASP的優(yōu)勢(shì):
Active Server Pages:“動(dòng)態(tài)服務(wù)器網(wǎng)頁(yè)”,一般簡(jiǎn)稱(chēng)為“ASP”,ASP之所以能受到大家的重視與使用的原因,主要在于所產(chǎn)生的執(zhí)行結(jié)果都是標(biāo)準(zhǔn)的HTML格式,而且這些程序是在網(wǎng)絡(luò)服務(wù)端中執(zhí)行,使用一般的瀏覽器(如IE 或Netscape)都可以正確地獲得ASP的“執(zhí)行”結(jié)果,并且將這ASP執(zhí)行的結(jié)果直接在瀏覽器中“瀏覽”,不像VBScript或 JavaScript是在客戶端(Client)的瀏覽器上執(zhí)行,若使用VBScript來(lái)設(shè)計(jì)程序,客戶端(Client)在IE瀏覽器中可以顯示程序執(zhí)行的結(jié)果,可是,客戶端(Client)若使用Netscape瀏覽器就無(wú)法顯示VBScript的執(zhí)行結(jié)果。
ASP的特點(diǎn):
任何開(kāi)發(fā)工具皆可發(fā)展ASP
只要使用一般的文書(shū)編輯程序,如Windows記事本,就可以編輯。當(dāng)然,其他網(wǎng)頁(yè)發(fā)展工具,例如,F(xiàn)rontPage Express、 FrontPage等也都可以;不過(guò)還是建議你用記事本來(lái)寫(xiě),既省錢(qián)又方便,若是使用那些所見(jiàn)即所得的網(wǎng)頁(yè)編輯來(lái)寫(xiě)ASP,可能會(huì)發(fā)生一些意想不到的離奇狀態(tài)。
通吃各家瀏覽由于ASP程序是在網(wǎng)絡(luò)服務(wù)器端中執(zhí)行,執(zhí)行結(jié)果所產(chǎn)生的HTML文件適用于不同的瀏覽器。
語(yǔ)言相容性高
ASP與所有的ActiveX Script語(yǔ)言都相容,除了可結(jié)合HTML,VBScript、Java Script、Active X服務(wù)器組件來(lái)設(shè)計(jì)外,并可經(jīng)由“plug-In(外掛組件模組)的方式,使用其他廠商(Third Party)所提供的語(yǔ)言。
隱密安全性高
如果我們?cè)跒g覽器中直接查看網(wǎng)頁(yè)的原始代碼,就只能看到HTML文件,原始的ASP程序代碼是看不到的!這是因杰ASP程序先于網(wǎng)站服務(wù)(Web Server)端執(zhí)行后,將結(jié)果轉(zhuǎn)換成標(biāo)準(zhǔn)HTML文件,再傳送到客戶端(Client)的瀏覽器上,因此,我們所辛苦撰寫(xiě)的ASP程序并不會(huì)輕易地被看見(jiàn)進(jìn)而被盜用。
易于操控?cái)?shù)據(jù)庫(kù)
ASP可以輕易地通過(guò)ODBC(Open Database Connectivity)驅(qū)動(dòng)程序連接各種不同的數(shù)據(jù)庫(kù),例如:Acess、Foxpro、dBase、Oracle等等,另外,ASP亦可將“文本文件”或是”Excel” 文件當(dāng)成數(shù)據(jù)庫(kù)用。
面向?qū)ο髮W(xué)習(xí)容易
ASP具備有面向?qū)ο螅ǎ蟗ject-Oriented)功能,學(xué)習(xí)容易,ASP提供了五種方便能力強(qiáng)大的內(nèi)建對(duì)象:Request、Response、Sever、Application以及Session,同時(shí),若使用ASP內(nèi)建的“Application”對(duì)象或”Session”對(duì)象所撰寫(xiě)出來(lái)的ASP程序可以在多個(gè)網(wǎng)頁(yè)之間暫時(shí)保存必要的信息。
ASP的六大內(nèi)部對(duì)象
對(duì)象名稱(chēng) 功能描述
RequestResponseServerSessionApplicationObjectContext 從客戶端取得信息將信息送給客戶端提供一些Web服務(wù)器工具儲(chǔ)存在一個(gè)Session內(nèi)的用戶信息,該信息僅可被該用戶訪問(wèn)在一個(gè)ASP-Application中讓不同的客戶端共享信息可以用來(lái)配合Microsoft Transaction 服務(wù)器進(jìn)行分布式事務(wù)處理
所以我選擇了ASP結(jié)合Frontpage架構(gòu)長(zhǎng)沙市工商職業(yè)中專(zhuān)學(xué)校網(wǎng)站
第二章 網(wǎng)站總體分析與設(shè)計(jì)
2.1網(wǎng)站系統(tǒng)分析
根據(jù)前面的設(shè)計(jì)思想進(jìn)行分析,按照系統(tǒng)開(kāi)發(fā)的基本觀點(diǎn)對(duì)網(wǎng)站進(jìn)行分解,從內(nèi)容上可對(duì)網(wǎng)站作如下劃分:
l 學(xué)校風(fēng)采 通過(guò)學(xué)校概括、教師風(fēng)采、校園之星及部分圖片等內(nèi)容來(lái)展現(xiàn)。
l 優(yōu)點(diǎn)特色 通過(guò)新聞、生動(dòng)活潑的教育教學(xué)欄目來(lái)展現(xiàn)。
l 信息發(fā)布 通過(guò)公告欄、信息查詢等欄目來(lái)實(shí)現(xiàn),內(nèi)容有招生政策、
活動(dòng)安排等。
l 部分校務(wù) 根據(jù)校務(wù)的公開(kāi)程度與參與人數(shù)的多少,特選擇圖書(shū)管
理、評(píng)優(yōu)、考試查分、家校聯(lián)系四大校務(wù)在網(wǎng)上實(shí)現(xiàn)。
2.2主頁(yè)設(shè)計(jì)
網(wǎng)站主頁(yè)采用靜、動(dòng)相結(jié)合的方式,即靜態(tài)的主畫(huà)面和動(dòng)態(tài)的圖片相結(jié)合,體現(xiàn)學(xué)校的勃勃生氣,靜態(tài)主頁(yè)方式介紹學(xué)校風(fēng)采、優(yōu)點(diǎn)特色、信息發(fā)布,對(duì)于四大校務(wù),就得利用ASP與數(shù)據(jù)庫(kù)結(jié)合的技術(shù)建立數(shù)據(jù)庫(kù)查詢管理系統(tǒng),采用交互式的動(dòng)態(tài)的web畫(huà)面來(lái)實(shí)現(xiàn)。
主頁(yè)結(jié)構(gòu)圖
注:帶下劃線的表示是鏈接方式
2.3數(shù)據(jù)庫(kù)設(shè)計(jì)
采用的數(shù)據(jù)庫(kù)是Microsoft Access ,擬建立teach.mdb庫(kù)文件,包含如下幾個(gè)表文件:
allmessage 留言信息表
Libbooks 圖書(shū)信息表
Libcategories 圖書(shū)類(lèi)別信息表
Libemps 圖書(shū)館用戶信息表;
stud 學(xué)生信息表
第三章 詳細(xì)設(shè)計(jì)
3.1 家長(zhǎng)學(xué)校聯(lián)絡(luò)簿
3.1.1功能:
利用SQL語(yǔ)法過(guò)濾特定的家長(zhǎng)留言意見(jiàn),讓老師可以針對(duì)某位特定學(xué)生家長(zhǎng)所發(fā)表的意見(jiàn)作出獨(dú)立的回答,同時(shí),家
長(zhǎng)在發(fā)表個(gè)人意見(jiàn)時(shí),若認(rèn)為意見(jiàn)內(nèi)容涉及敏感的話題或是意見(jiàn)內(nèi)容涉及私人隱私,都可用“悄悄話”的方式發(fā)言,這些“悄悄話”將不會(huì)被顯示出來(lái)讓大家看到,當(dāng)然,老師擁有管理的能力,只要以密碼登錄管理模式,就可以進(jìn)行各個(gè)學(xué)生家長(zhǎng)的單獨(dú)意見(jiàn)回復(fù),而且還能看到家長(zhǎng)們所留下的“悄悄話”。
3.1.2組成構(gòu)造
共分成六大部分:
1, 意見(jiàn)留言結(jié)果網(wǎng)頁(yè)guest.asp:用來(lái)顯示家長(zhǎng)發(fā)言與老師回復(fù)內(nèi)容,同時(shí)還具備一般模式與管理模式兩種顯示方法。
2, 家長(zhǎng)發(fā)言表單網(wǎng)頁(yè)addmsg.asp:讓學(xué)生家長(zhǎng)填寫(xiě)發(fā)言內(nèi)容并選擇發(fā)言性質(zhì)。
3, 家長(zhǎng)發(fā)言數(shù)據(jù)處理ASP程序add.asp:處理家長(zhǎng)發(fā)表的意見(jiàn)數(shù)據(jù),同時(shí)將這些意見(jiàn)數(shù)據(jù)記錄起來(lái)并將網(wǎng)頁(yè)顯示轉(zhuǎn)向至意見(jiàn)留言結(jié)果網(wǎng)頁(yè)。
4, 老師回復(fù)表單網(wǎng)頁(yè)teachans.asp:讓老師針對(duì)某位特定學(xué)生家長(zhǎng)所發(fā)表的意見(jiàn)作出獨(dú)立的回答。
5, 老師回復(fù)數(shù)據(jù)處理ASP程序anssave.asp:處理老師回復(fù)的數(shù)據(jù)內(nèi)容,同時(shí)將這些意見(jiàn)數(shù)據(jù)起來(lái)并將網(wǎng)頁(yè)顯示轉(zhuǎn)向至意見(jiàn)留言結(jié)果網(wǎng)頁(yè)。
6, 數(shù)據(jù)表文件allmessage:用來(lái)儲(chǔ)存家長(zhǎng)發(fā)言數(shù)據(jù)與老師回復(fù)數(shù)據(jù)的Access類(lèi)型數(shù)據(jù)庫(kù)文件。
“數(shù)據(jù)表文件”負(fù)責(zé)存放家長(zhǎng)發(fā)言數(shù)據(jù)與老師回復(fù)內(nèi)容的數(shù)據(jù)記錄,為Access類(lèi)型的庫(kù)文件,將它定名為:“message.mdb”。
下圖為家庭聯(lián)絡(luò)簿的組成與流程圖:
老師回復(fù)
家長(zhǎng)留言
讀入 寫(xiě)入
寫(xiě)入
3.1.3數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)
數(shù)據(jù)庫(kù)文件”teach.mdb“中的數(shù)據(jù)表” allmessage“的欄目設(shè)置,如下圖:
字段名 字段類(lèi)型
3.1.4界面設(shè)計(jì)與重點(diǎn)、難點(diǎn)代碼的設(shè)計(jì)
數(shù)據(jù)庫(kù)與留言顯示程序網(wǎng)頁(yè)
家長(zhǎng)發(fā)言與老師回復(fù)的內(nèi)容數(shù)據(jù)全部?jī)?chǔ)存在數(shù)據(jù)庫(kù)中,要在網(wǎng)頁(yè)中顯示目前的家長(zhǎng)發(fā)言與老師回復(fù)數(shù)據(jù),必須先進(jìn)行數(shù)據(jù)庫(kù)的鏈接與打開(kāi),要鏈接數(shù)據(jù)庫(kù)我們必須使用ADO對(duì)象群的Connection對(duì)象;而要打開(kāi)數(shù)據(jù)庫(kù)則必須使用ADO對(duì)象群的Recordset對(duì)象,程序:
set cn=server.createobject("adodb.connection")
cn.open "filedsn=c:\program files\common files\odbc\data sources\ms access database.dsn"
set rs=server.createobject("adodb.recordset")
sql="select * from allmessage order by 留言時(shí)間 desc"
rs.open sql,cn,1,1
Recordset對(duì)象是負(fù)責(zé)瀏覽與操作從數(shù)據(jù)庫(kù)取出來(lái)的數(shù)據(jù),Connection對(duì)象只負(fù)責(zé)與數(shù)據(jù)庫(kù)進(jìn)行鏈接的動(dòng)作,并不能使用數(shù)據(jù)庫(kù)內(nèi)的數(shù)據(jù),因此必須建立一個(gè)可以存取數(shù)據(jù)庫(kù)數(shù)據(jù)的Recordset對(duì)象,
使用RS.Open方法存取”teach.mdb”數(shù)據(jù)庫(kù)
RS.Open SQL,CN,1,1
使用open方法來(lái)打開(kāi)數(shù)據(jù)表或執(zhí)行Select指令參數(shù)設(shè)置如下:
1, 參數(shù)一(SOURCE):為欲打開(kāi)的數(shù)據(jù)表或SQL指令。
2, 參數(shù)二(ActionConnection):指定一個(gè)已打開(kāi)的數(shù)據(jù)庫(kù)對(duì)象,將此參數(shù)設(shè)為鏈接我們已經(jīng)建立好的Connection對(duì)象“CN”。
3, 參數(shù)三( CursorType):指定Recordset的打開(kāi)類(lèi)型,1為可讀寫(xiě)且可自由移動(dòng)。
4, 參數(shù)四(LockType):指定鎖定類(lèi)型,1為只讀。
數(shù)據(jù)排序與SQL指令
1. Select 指令的篩選語(yǔ)句:
格式: Select…From
在SQL語(yǔ)言中:“Select”數(shù)據(jù)表“中選取某些“欄位”的數(shù)據(jù).
2.如果要選取的數(shù)據(jù)表數(shù)據(jù)包含了一個(gè)以上的欄位,則我們可以利用“,”逗號(hào)來(lái)欄位名稱(chēng)隔開(kāi)。
3. 如果要選取的數(shù)據(jù)表數(shù)據(jù)包含了全部的欄位,則可以利用萬(wàn)用字符“*”來(lái)代表全部的欄位。
可排序數(shù)據(jù)的Select指令
1. 當(dāng)我們希望被選取出來(lái)的數(shù)據(jù)記錄數(shù)據(jù)能夠依據(jù)某個(gè)或某幾個(gè)欄位的內(nèi)容來(lái)排序時(shí),只要將這些排序依據(jù)的欄位擺放在“Order By“保留字之后,然后將這處排序的語(yǔ)句連接在”Select…From“后面就行了。
2. “Order By“默認(rèn)的排序方式是“由小排到大”,但若是希望排序方式是“由大排到小”,則我們可在欄位名稱(chēng)后再加上“Desc“保留字!將排序方式改為”由大排到小“。
在“顯示留言意見(jiàn)”網(wǎng)頁(yè)中的打開(kāi)數(shù)據(jù)庫(kù)ASP程序中的語(yǔ)句:
SELECT*From allmessage order by 留言日期 Desc
功能為:從數(shù)據(jù)表“allmessage“中取出所有欄位的數(shù)據(jù),并將取出的數(shù)據(jù)記錄內(nèi)容依照”留言日期“欄位使用的”由大排到小“排序方式進(jìn)行排序。
留言顯示網(wǎng)頁(yè)的管理模式
“顯示留言意見(jiàn)”的網(wǎng)頁(yè)就必須具備顯示模式選擇的功能,當(dāng)顯示模式在一般情況時(shí)要能顯示家長(zhǎng)們的一般性發(fā)言,同時(shí)還得將“悄悄話“的發(fā)言隱藏起來(lái)。當(dāng)老師以密碼登錄成為管理模式時(shí),則必須將一般性發(fā)言與悄悄話發(fā)言的數(shù)據(jù)全部顯示出來(lái),同時(shí)還得讓老師們可以針對(duì)某位特定學(xué)生家長(zhǎng)所發(fā)表的意見(jiàn)作出獨(dú)立的回答。
這兩個(gè)情況是通過(guò)密碼登錄管理模式的ASP程序?qū)崿F(xiàn)的:
<form method="post">
<%if session("checkedit")="yes" then%>
<input type="hidden" value="yes" name="goexit">
<input type="submit" value="離開(kāi)管理模式">
<%else%>
密碼:<input type="password" name="password" size="4" maxlength="4">  <input type="submit" value="教師管理">
<%end if%>
</form>
在這段網(wǎng)頁(yè)語(yǔ)句中,利用Session對(duì)象來(lái)記錄目前的工作模式。當(dāng)我們第一次進(jìn)入“顯示留言意見(jiàn)”網(wǎng)頁(yè)的時(shí)候,我們所見(jiàn)的網(wǎng)頁(yè)畫(huà)面一定是一般!因?yàn)镾ession尚未被建立,因此它的“變量”值一定不會(huì)是“yes”,所以網(wǎng)頁(yè)中會(huì)出現(xiàn)一個(gè)輸入密碼進(jìn)入“教師管理”模式的欄位,只有當(dāng)我們輸入密碼按下“教師管理”的按鈕組織上發(fā)ASP程序中的進(jìn)入管理模式語(yǔ)句后,Session對(duì)象才會(huì)被建立,同時(shí),“checkedit“Session對(duì)象變量值被設(shè)置為“yes“,所以我們就進(jìn)入了能將一般性發(fā)言與悄悄話發(fā)言的數(shù)據(jù)
全部顯示出來(lái),同時(shí)還讓教師們可以針對(duì)某位特定學(xué)生家長(zhǎng)所發(fā)表的意見(jiàn)作出獨(dú)立回答的管理模式頁(yè)面。
留言顯示網(wǎng)頁(yè)的分頁(yè)
當(dāng)家長(zhǎng)的發(fā)言與老師回復(fù)的數(shù)據(jù)筆數(shù)太多時(shí),一次要將全部的數(shù)據(jù)內(nèi)容顯示在網(wǎng)頁(yè)中,等待網(wǎng)頁(yè)下載的時(shí)間太長(zhǎng)了,因此采用固定筆數(shù)分頁(yè)瀏覽方式來(lái)顯示網(wǎng)頁(yè)。
要進(jìn)行分頁(yè)顯示,得先知道目前有多少筆的留言數(shù)據(jù),而留言數(shù)據(jù)筆數(shù)可以通過(guò)Recordset對(duì)象的“Recordcount“(記錄個(gè)數(shù))屬性得知,我們將每10筆數(shù)據(jù)為一單位分頁(yè)顯示:
count=rs.recordcount
if count/10>(count\10) then
totalpage=(count\10)+1
else totalpage=(count\10)
end if
“/”為浮點(diǎn)數(shù)除法,“\”為整數(shù)除法。
跳頁(yè)選擇的ASP程序語(yǔ)句
所有的發(fā)言數(shù)據(jù)采用固定筆數(shù)分頁(yè)瀏覽的方式來(lái)顯示后,還要提供一個(gè)跳頁(yè)鏈接顯示的功能,讓瀏覽者可以選擇希望瀏覽的頁(yè)次進(jìn)得瀏覽,ASP程序語(yǔ)句:
pagecount=0
rs.movefirst
if request.querystring("topage")<>"" then pagecount=cint(request.querystring("topage"))
if pagecount<=0 then pagecount=1
if pagecount>totalpage then pagecount=totalpage
rs.move(pagecount-1)*10
發(fā)言表單網(wǎng)頁(yè)制作
inse tu3
表單的參數(shù)
表單的Action參數(shù):Action參數(shù)是用來(lái)指定Server端處理此一表單數(shù)據(jù)內(nèi)容的程序,此處表單處理ASP程序?yàn)椤癮dd.asp“,
表單的Mothed參數(shù):要將表單傳送至Server端的方式有兩種,設(shè)置值分別為GET及POST,若設(shè)置為POST,則瀏覽器會(huì)等Server端來(lái)讀取數(shù)據(jù),若設(shè)置為GET,則當(dāng)我們按下送出按鈕時(shí),瀏覽器會(huì)立即將表單中的數(shù)據(jù)內(nèi)傳送出去。利用POST方法,在傳送的數(shù)據(jù)上將不受限制,利用GET方法傳送的數(shù)據(jù)量則大約只有2K左右。
留言處理程序
要將家長(zhǎng)發(fā)言數(shù)據(jù)作后續(xù)處理及將這些數(shù)據(jù)內(nèi)容存入數(shù)據(jù)庫(kù),須利用添加數(shù)據(jù)記錄的Insert Into 指令,然后再寫(xiě)入數(shù)據(jù)庫(kù)文件中:
Inset into 指令語(yǔ)句格式:
Insert into 數(shù)據(jù)表名 (欄目名) values(欄目值)
sql="insert into allmessage(家長(zhǎng)姓名,留言主題,聯(lián)絡(luò)信箱,留言內(nèi)容,私人公開(kāi),留言時(shí)間,班級(jí)) values("
sql=sql&"'"& parent&"',"
sql=sql&"'"&subject&"',"
sql=sql&"'"&email&"',"
sql=sql&"'"&memo&"',"
sql=sql&"'"&personal&"',"
sql=sql&"'"&now&"',"
sql=sql&"'"&bj&"')"
cn.execute sql
回復(fù)表單程序網(wǎng)頁(yè)
必須讓老師們可以針對(duì)某位特定學(xué)生家長(zhǎng)所發(fā)表的意見(jiàn)作出獨(dú)立的回答,
使用Select…From…Where篩選語(yǔ)句
sql="select * from allmessage where(編號(hào)="&ID&")"
rs.open sql,cn,1,3
然后將特定的家長(zhǎng)發(fā)言數(shù)據(jù)放在表單,方法是將數(shù)據(jù)庫(kù)中的數(shù)據(jù)取出來(lái),然后放在表單欄位中:
“家長(zhǎng)姓名“欄位網(wǎng)頁(yè)語(yǔ)句標(biāo)簽
<td bgcolor="#CCCCFF"><font size="2"><%=RS("家長(zhǎng)姓名")%><font></td>
“留言主題“欄位網(wǎng)頁(yè)語(yǔ)句標(biāo)簽
<td bgcolor="#CCCCFF"><font size="2"><%=RS("留言主題")%></font></td>
“留言內(nèi)容“欄位網(wǎng)頁(yè)語(yǔ)句標(biāo)簽
<td bgcolor="#CCCCFF"><font size="2"><%=RS("留言內(nèi)容")%><font></td>
老師在回復(fù)欄位中所填入的數(shù)據(jù),必須送給處理老師回復(fù)數(shù)據(jù)的ASP程序”anssave.asp”來(lái)記錄以及處理這些回復(fù)數(shù)據(jù)。當(dāng)老師填寫(xiě)好回復(fù)發(fā)言的數(shù)據(jù)后按下“送出回復(fù)”按鈕后,表單中的數(shù)據(jù)內(nèi)容就會(huì)以“POST”的方式由SEVER端讀取,然后將數(shù)據(jù)內(nèi)容交由處理老師回復(fù)數(shù)據(jù)的ASP程序“anssave.asp”來(lái)將數(shù)據(jù)內(nèi)容寫(xiě)入數(shù)據(jù)庫(kù)。
3.2網(wǎng)上圖書(shū)館
網(wǎng)上圖書(shū)館將學(xué)校圖書(shū)館圖書(shū)放到網(wǎng)絡(luò)上供人借閱,這樣不僅方便了校內(nèi)的學(xué)生與教職員工使用圖書(shū)館的資源,還為圖書(shū)館管理員提供了一種簡(jiǎn)便地管理圖書(shū)館的方法.
3.2.1功能
網(wǎng)上圖書(shū)館系統(tǒng)可以進(jìn)行圖書(shū)的出借和歸還.還可以在系統(tǒng)中按照多種字段對(duì)圖書(shū)進(jìn)行查找,還可以瀏覽某個(gè)種類(lèi)的所有圖書(shū).該應(yīng)用程序也為圖書(shū)館管理員提供了一些功能,如添加、編輯以及刪除圖書(shū)等,或者在分類(lèi)層次結(jié)構(gòu)中添加新的種類(lèi)。
3.2.2系統(tǒng)的層次結(jié)構(gòu)
下圖的每個(gè)方框代表校園圖書(shū)館網(wǎng)站中的一個(gè)頁(yè)面。除了只包含HTML的Search頁(yè)面外,其他的均為ASP頁(yè)面。因?yàn)槊總(gè)圖書(shū)的頁(yè)面都不同,所以大多數(shù)的頁(yè)面實(shí)際上都是多頁(yè)面。
3.2.3數(shù)據(jù)庫(kù)設(shè)計(jì)
本系統(tǒng)共使用3個(gè)數(shù)據(jù)表:
LibBooks表包含與圖書(shū)有關(guān)的所有數(shù)據(jù)。該表中的字段內(nèi)容的圖書(shū)的通用信息。另外,對(duì)于已經(jīng)出借的圖書(shū),該表中還包含借閱該圖書(shū)的用戶的ID號(hào),以及圖書(shū)的狀態(tài)。
表視圖如下:
字段名 意義 字段類(lèi)型 字段名 意義 字段類(lèi)型
bookid 書(shū)號(hào)(主鍵) 數(shù)字 (no null) status 狀態(tài) 文本
title 書(shū)名 文本 checkedoutto 用戶id 數(shù)字
author 著者 文本 reservedby 用戶學(xué)號(hào) 數(shù)字
Subject 主題 文本 description 描述 文本
Isbn Isbn號(hào) 文本 keywords 關(guān)鍵字 文本
LibCategories 表包含Library中的所有類(lèi)
別,在訪問(wèn)者瀏覽圖書(shū)列表時(shí)將會(huì)用到這些類(lèi)別。每個(gè)類(lèi)別都可以作為另外類(lèi)別的父類(lèi)別。有一個(gè)特殊的類(lèi)別,Top-Level,沒(méi)有出現(xiàn)在類(lèi)別列表中,但是可以作為其他任何類(lèi)別的父類(lèi)別。
字段名 意義 字段類(lèi)型
Categoryname 類(lèi)別 文本(noll)
parentcategory 父類(lèi)別 文本(noll)
LibEmps表包含可以訪問(wèn)圖書(shū)館網(wǎng)站的用戶信息。該表包含一些通用的信息字段,比如用于進(jìn)入圖書(shū)館的用戶密碼等。
字段名 意義 字段類(lèi)型 字段名 意義 字段類(lèi)型
empid 用戶id (主鍵no null) 數(shù)字 password 用戶密碼 文本
Empname 用戶姓名 文本 manager 管理員代號(hào) 數(shù)字
emailaddress 用戶郵箱 文本
圖書(shū)館數(shù)據(jù)庫(kù)的數(shù)據(jù)關(guān)系如圖9-22所示。其中表LibEmps和表Lib Categories與表LibBooks之間都是一對(duì)多的關(guān)系。每個(gè)雇員都可以借閱多本圖書(shū),每個(gè)類(lèi)別都可以包含多本圖書(shū)。
3.2.3界面設(shè)計(jì)與重點(diǎn)代碼的設(shè)計(jì)
網(wǎng)上圖書(shū)館系統(tǒng)有兩種用戶,一是管理員。另一種是只允許使用圖書(shū)館系統(tǒng),而沒(méi)有管理功能的一般用戶。訪問(wèn)者進(jìn)入網(wǎng)站,首先要進(jìn)行登錄,如下圖所示。登錄頁(yè)面(index.asp)
訪問(wèn)者輸入E-mail地址和密碼來(lái)登錄,然后單擊“登錄”按鈕。輸入的數(shù)據(jù)提交后與數(shù)據(jù)庫(kù)中的用戶表進(jìn)行匹配。
須創(chuàng)建一個(gè)記錄來(lái)保存基于訪問(wèn)者登錄的用戶信息
set RSFindEmp = conn.Execute("select EmpID, Manager from LibEmps where " _
& "EmailAddress = '" & Request.Form("EmailAddress") & "' and " _
& "Password = '" & Request.Form("Password") & "'")
if RSFindEmp.EOF then
TheMessage = "密碼或email地址不對(duì)."
else
Session("EmpID") = RSFindEmp("EmpID")
Session("Manager") = RSFindEmp("Manager")
Response.Redirect "../yk.htm"
end if
表單域EmailAddress和Password 用于Where了句中來(lái)獲取一個(gè)記錄。如果訪問(wèn)者輸入了一個(gè)無(wú)效的用戶名,則記錄集中將不會(huì)返回匹配的記錄。我們可以通過(guò)查看EOF標(biāo)記來(lái)判斷一個(gè)記錄集是否為空。為空,則訪問(wèn)者將被拒絕進(jìn)入該系統(tǒng)。不為空,則訪問(wèn)者的EmpID值和Manager值將從記錄集中返回。寫(xiě)入Session 變量, 變量將在整個(gè)網(wǎng)站的所有網(wǎng)頁(yè)中都是有效的。這些變量的存在與否及其取值將用于確定是否允許進(jìn)入一個(gè)特定的網(wǎng)頁(yè),同時(shí)也用于訪問(wèn)者進(jìn)行書(shū)目的歸還和借閱操作。
圖書(shū)館菜單頁(yè)面
圖書(shū)館菜單頁(yè)面包含指向其他4個(gè)頁(yè)面的鏈接:管理頁(yè)面、搜索頁(yè)面、圖書(shū)列表頁(yè)面和主頁(yè)面。還有一個(gè)可顯示用戶所借書(shū)籍的按紐。如果訪問(wèn)者是圖書(shū)館管理員,則菜單界面如圖所示。如果訪問(wèn)者不是圖書(shū)館管理員,則看到如圖所示的界面。非管理員的訪問(wèn)者的界面上沒(méi)有指向管理員菜單頁(yè)面的鏈接。
實(shí)現(xiàn)辦法:訪問(wèn)者登錄時(shí)在登錄頁(yè)面上的創(chuàng)建的會(huì)話變量Session 用于從數(shù)據(jù)庫(kù)中獲取訪問(wèn)者的有關(guān)信息,表示它是否是管理員。如果值為1,就表明訪問(wèn)者是一個(gè)管理員,則用如下代碼寫(xiě)入一個(gè)指向管理員頁(yè)面的鏈接:
<% If Session("Manager") = 1 then %>
<A HREF="../html/management_menu.asp">管理員菜單</A>
<% end if %>
通過(guò)按紐B1是否為空來(lái)判斷要不要顯示用戶所借圖書(shū),利用一個(gè)記錄集來(lái)獲取訪問(wèn)者已經(jīng)借出了的所有圖書(shū)的列表。
if NOT isempty(Request.Form("B1")) then
set RSBooks = conn.Execute ("select BookID, Title from LibBooks where " _
& "CheckedOutTo = " & Session("EmpID"))
end if
再用循環(huán)語(yǔ)句將所借書(shū)以表格形式顯示出來(lái)。
<table border=1 width="90%" >
<% if NOT isempty(Request.Form("B1")) then
Do Until RSBooks.EOF%>
<TR >
<TD WIDTH=40% height="20"><% Response.Write RSBooks("Title") %></td></tr>
<% RSBooks.MoveNext
loop
end if
%>
</table>
循環(huán)將遍歷Rsbooks記錄集中的每個(gè)記錄,直到該記錄集結(jié)束:
該網(wǎng)站中的所有ASP頁(yè)面都會(huì)在訪問(wèn)者訪問(wèn)之前對(duì)其進(jìn)行登錄檢查。這樣就可以避免訪問(wèn)者通過(guò)輸入某個(gè)頁(yè)面地址然后在沒(méi)有登錄的情況下直接進(jìn)入該頁(yè)面的情況發(fā)生。此外,每個(gè)管理頁(yè)面都要確認(rèn)訪問(wèn)者是管理員。
管理菜單頁(yè)面
管理菜單頁(yè)面有一個(gè)HTML表單,根據(jù)選擇的按鈕的不同,可以進(jìn)行5種不同的操作:圖書(shū)的歸還、圖書(shū)的編輯、圖書(shū)的刪除、圖書(shū)的添加和類(lèi)別的添加。不管選擇了哪一個(gè)按鈕,該表單都提交人其自身進(jìn)行處理。
要進(jìn)行圖書(shū)的歸還、圖書(shū)的編輯、圖書(shū)的刪除三種操作,須先進(jìn)行搜索,找到該書(shū)后,由圖書(shū)B(niǎo)ook.asp返回一個(gè)鏈接:
<% If Session("Manager") = 1 then %>
<A HREF="../html/management_menu.asp?title=<% response.write RSBooks("Title") %>&BOOKID=<% response.write RSBooks("BOOKID") %>">管理員菜單</A>
<% end if %>
而管理者頁(yè)面通過(guò)下列語(yǔ)句
<%=request.querystring("title")%>
<inputzztype=hidden name="BOOKID1"value="
<%=request.querystring("BOOKID")%>>
這樣就將所找到的書(shū)的書(shū)號(hào)BookID、書(shū)名Title傳遞管理者頁(yè)面。再進(jìn)行所須操作。共有3個(gè)不同的銨紐,可以進(jìn)行3種操作。若單擊“修改”鈕:
則重定向到編輯圖書(shū)頁(yè)面,同時(shí)把Bookid 傳遞給該頁(yè)面。
Response.Redirect "./edit_book.asp?BOOKID="&request("BOOKID1")
將其他的情況需要建立到數(shù)據(jù)庫(kù)的連接:
set conn = server.createobject ("adodb.connection")
Conn.Open("FILEDSN=c:\Program Files\Common Files\ODBC\Data Sources\ms access database.dsn")
if NOT isempty(Request.Form("Delete")) and request("BOOKID1")<>"" then
conn.Execute "delete from LibBooks where BOOKID ="&request("BOOKID1")
end if
if (NOT isempty(Request.Form("checkin"))) and request("BOOKID1")<>"" then
conn.Execute "update LibBooks set checkedoutto= 0, status= 'Available' where BookID="&Request("BOOKID1")
end if
頁(yè)面中的添加新的種類(lèi)部分包含一個(gè)文本控件和一個(gè)選擇控件。其中選擇控件是用所有已經(jīng)存在的類(lèi)別列表進(jìn)行填充的,包括特殊類(lèi)別 Top level ,該類(lèi)別表明當(dāng)前類(lèi)別是處于類(lèi)別層次結(jié)構(gòu)中的最頂層。代碼如下:
先用一個(gè)記錄集來(lái)填充父類(lèi)別選擇控件:
set RSCategories = conn.Execute("select CategoryName from LibCategories order by CategoryName")
再用下列循環(huán)語(yǔ)句:
<%
Do Until RSCategories.EOF
%>
<OPTION VALUE="<% response.write RSCategories("CategoryName") %>"><% response.write RSCategories("CategoryName") %></OPTION>
<%
RSCategories.MoveNext
Loop
%>
遍歷RSCategories記錄集中的每個(gè)記錄,并作為一個(gè)選項(xiàng)添加到列表中,而記錄集中CategoryName 同時(shí)作為顯示值和傳遞值:
本頁(yè)面還包含一個(gè)指向添加圖書(shū)頁(yè)面的鏈接。
搜索結(jié)果頁(yè)面
搜索頁(yè)面的代碼獲取與訪問(wèn)者查找規(guī)則相匹配的圖書(shū),然后將這些圖書(shū)顯示給訪問(wèn)者。
搜索頁(yè)面上的表單包含一個(gè)選擇控件和一個(gè)文本控件。選擇控件中的選項(xiàng)是用可搜索 的字段填充的:
需要用一個(gè)記錄集來(lái)保存與訪問(wèn)者的查找規(guī)則相匹配的記錄:
set RSBooks = conn.Execute("select BookID, Author, Title, Subject from LibBooks where " _
& Request.Form("SearchField") & " Like '%" & Request.Form("SearchCriteria") & "%'")
注意:,符號(hào)%表示的是一個(gè)廣義搜索。這一點(diǎn)類(lèi)似于ACCESS中的符號(hào)*。
然后將所找到的書(shū)以表格形式顯示出來(lái)。代碼如下:
<% Do Until RSBooks.EOF %>
<TR VALIGN="top" ALIGN="left">
<TD WIDTH=40% height="20"><B>書(shū)名:</B> <A HREF="../html/book.asp?BookID=<% Response.Write RSBooks("BookID") %>"><% Response.Write RSBooks("Title") %></A></TD>
<td width=20% height="20"><B>著者:</B> <% Response.Write RSBooks("Author") %></td>
<td width=30% height="20"><B>主題:</B> <% Response.Write RSBooks("Subject") %> </td>
<% RSBooks.MoveNext
Loop %>
圖書(shū)頁(yè)面
圖書(shū)頁(yè)面的代碼顯示圖書(shū)的有關(guān)信息,以及管理圖書(shū)的出借操作。
該頁(yè)面通過(guò)Querystring 傳遞BookID
if isempty(Request.QueryString("BookID")) then
Response.Redirect "./search.html"
end if
如果其中不存在,則訪問(wèn)者將被重定向到搜索頁(yè)面:
如果同時(shí)傳遞表單中包含的變量Action不為空,則表明訪問(wèn)者正借閱該圖書(shū):
if Not isempty(Request.QueryString("Action")) then
在這種情況下,需要將圖書(shū)狀態(tài)改為 Checkout, 同時(shí)需要將Checkedoutto 字段修改為該訪問(wèn)者:
conn.Execute "update LibBooks set Status = 'Checked Out', " _
& "CheckedOutTo = " & Session("EmpID") & " where BookID = " _
& Request.QueryString("BookID")
Response.Redirect "./library_menu.asp"
end if
然后將該訪問(wèn)者重定到圖書(shū)館菜單頁(yè)面:
下一步,利用圖書(shū)的狀態(tài)來(lái)確定不同的鏈接
未借出時(shí)鏈接如下:
if RSBooks("status") = "Available" then
LinkText = "<A HREF=""../html/book.asp?Action=CheckOut&BookID=" _
& Request.QueryString("BookID") & """>借這本書(shū)</A>"
如果圖書(shū)已經(jīng)借出,就創(chuàng)建一個(gè)不同的消息,并將鏈接設(shè)置為指向Library menu 頁(yè)面:
LinkText = "<A HREF=""../html/library_menu.asp"">圖書(shū)已出借,返回主菜單。</A>"
最后根據(jù)是否是管理員,顯示管理員菜單鏈接。
<% If Session("Manager") = 1 then %><A HREF="../html/management_menu.asp?title=<% response.write RSBooks("Title") %>&BOOKID=<% response.write RSBooks("BOOKID") %>">管理員菜單</A><% end if %>
3.3網(wǎng)上評(píng)優(yōu)投票系統(tǒng)
3.3.1功能:
能實(shí)現(xiàn)全校性的評(píng)選,快捷、公平,且有效,不允許做票。
3.3.2組成構(gòu)造
這個(gè)系統(tǒng)由3個(gè)部分組成——投票頁(yè)面vote.htm ,處理投票結(jié)果的腳本,顯示投票頁(yè)面 。
3.3.3數(shù)據(jù)表的設(shè)計(jì):
3.3.4界面設(shè)計(jì)與重點(diǎn)、難點(diǎn)代碼設(shè)計(jì)
投票頁(yè)面
該頁(yè)面是一個(gè)純HTML文件,它讓用戶選擇自己想選舉的候選人,并填寫(xiě)自己的詳細(xì)資料,以確認(rèn)投票的有效性。頁(yè)面顯示如圖所示。
表單處理腳本
在vote.htm中各項(xiàng)數(shù)據(jù)都填寫(xiě)完畢后,單擊確定投票按鈕,表單的數(shù)據(jù)就被提交,
本次評(píng)優(yōu)共有4個(gè)候選人,但只能選兩個(gè)。故用復(fù)選框。
投票的有效性通過(guò)是否是本校學(xué)生,且是否投過(guò)票來(lái)判斷。
if request("passno")<>"" then
sql="select * from stud where password="&"'"&request("passno")&"'" &"and yitu=0"
set rs=cn.execute(sql)
if rs.eof then%>
<h2 align=center><%response.write"你無(wú)權(quán)投票"%></h2>
本設(shè)計(jì)允許少選,不允許多選。通過(guò)判斷Vote投票界面?zhèn)鬟f過(guò)來(lái)的復(fù)選按紐值的長(zhǎng)度看是否多選。
vo=request("cand")
if len(vo)>4 then%>
<h2 align=center><%response.write "多選了,無(wú)效"%></h2>
然后根據(jù)所投的票將對(duì)應(yīng)候選人的投票結(jié)果字段加1,同時(shí)將該投票人的已投字段置為1。
sqq="update stud set yitu=1 where password="&"'"&request("passno")&"'"
cn.execute(sqq)
if instr(vo,"1") then
cn.execute("update stud set result=result+1 where name='李寧'")
end if
if instr(vo,"2") then
cn.execute("update stud set result=result+1 where name='楊蘭'")
end if
if instr(vo,"3") then
cn.execute("update stud set result=result+1 where name='江道明'")
end if
if instr(vo,"4") then
cn.execute("update stud set result=result+1 where name='段啟文'")
end if%>
顯示當(dāng)前投票情況show.asp
由于投票處理頁(yè)面已經(jīng)完成了絕大部分的工作,所以 顯示結(jié)果頁(yè)面就很簡(jiǎn)單了,其功能是從 Stud表文件中讀取候選人所得票數(shù),顯示在頁(yè)面上。
頁(yè)面顯示如圖
值得注意的代碼主要有以下幾處:
該頁(yè)面有自動(dòng)刷新功能,使在線用戶可以盡快的看到最新的選舉情況。我們這里設(shè)定每隔30秒鐘自動(dòng)刷新一次。
<meta http-equiv="refresh" content="10;URL=show.asp">
顯示投票時(shí),我們采用了while循環(huán),把候選人及其得票數(shù),整齊地顯示在一個(gè)表格中,這種技術(shù)在數(shù)據(jù)庫(kù)查詢結(jié)果的顯示中也經(jīng)常用到。代碼如下:
<%while not hs.eof %>
<tr>
<td width="100%"><center>
<font color="#8000ff"><big>
<%=hs("name")&" "&hs("result")&"票"%>
</big> </font>
</center>
</td>
</tr>
<%hs.movenext%>
<%wend%>
3.4達(dá)級(jí)考試在線查分系統(tǒng)與計(jì)數(shù)器的制作
3.4.1功能:
它提供了在線查看成績(jī)?忌梢栽诰W(wǎng)上使用這一系統(tǒng),通過(guò)輸入準(zhǔn)考證編號(hào)來(lái)查詢達(dá)級(jí)考試的結(jié)果。
3.4.2數(shù)據(jù)表的設(shè)計(jì)
與評(píng)優(yōu)系統(tǒng)共用STUd表,表設(shè)計(jì)同上。
3.4.3界面設(shè)計(jì)與重點(diǎn)難點(diǎn)代碼的設(shè)計(jì)
該模塊需要查詢者輸入準(zhǔn)考證號(hào)后來(lái)查看結(jié)果。若ID1不為空時(shí),表示有表單輸入,開(kāi)始查詢數(shù)據(jù)庫(kù)。使用 SELECT的SQL指令查詢數(shù)據(jù)庫(kù)的數(shù)據(jù)。先設(shè)定SQL指令,查詢ID符合準(zhǔn)考證編號(hào)Request.Form("ID1")的數(shù)據(jù),下個(gè)“Execute”指令,即可開(kāi)始執(zhí)行存取、查詢數(shù)據(jù)的動(dòng)作了。并將查詢結(jié)果儲(chǔ)存到Recordsets組件RS中。
IF Request.Form("ID1")<>"" THEN
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("FILEDSN=c
:\Program Files\Common Files\ODBC\Data Sources\ms access database.dsn")
SQL = "SELECT name,id,score FROM stud WHERE id='" & Request.Form("ID1") & "'"
Set RS = Conn.Execute(SQL)
若考試通過(guò),則顯示考試的結(jié)果,包括姓名、準(zhǔn)考證編號(hào)、總分和考試結(jié)果,分別由RecordSets 組件的RS(0)、RS(1)、RS(2)、RS(3)得到。FS.Field.Count表示RecordSets組件的域的總數(shù),由“for I=0 to RS.Fields.count-1”,取得RS(I)各域的數(shù)據(jù)。配合 <Table> 表格的HTML語(yǔ)法,將結(jié)果填入表格的各單元格中。 若還有下一個(gè)數(shù)據(jù),就使用RS.MoveNext 移到下一個(gè)位置。
3.4.4頁(yè)面訪問(wèn)計(jì)數(shù)器的制作
利用文件處理組件FILESYSTEM的強(qiáng)大功能來(lái)制作,比用Application對(duì)象計(jì)數(shù)器要好,Application計(jì)數(shù)器當(dāng)有20分鐘沒(méi)有人連上該網(wǎng)頁(yè)或關(guān)機(jī)時(shí),計(jì)數(shù)器會(huì)被歸零。而文件計(jì)數(shù)器卻不會(huì)因時(shí)間而消失。我用Count.txt存放訪問(wèn)人次。代碼如下:
whichfile=server.mappath("pic\count.txt")
set myfile=server.createobject("scripting.filesystemobject") 創(chuàng)建一個(gè)
set thisfile=myfile.opentextfile(whichfile) 組件對(duì)象
visit=thisfile.readline
thisfile.close 讀取計(jì)數(shù)器數(shù)據(jù)文件Count.txt中的計(jì)數(shù)數(shù)據(jù)
visit=visit+1 記錄自加一次
length=len(visit)
for i=1 to length
response.write "<img src="&mid(visit,i,1)&".jpg></img>" 將記錄的數(shù)據(jù)用圖片顯示出來(lái)
next
set thisfile=myfile.createtextfile(whichfile,1) 將新計(jì)數(shù)數(shù)據(jù)寫(xiě)入文件thisfile.writeline(visit)
set myfile=nothing
數(shù)字圖片我利用PHOTOSHOP中的文字特效制作了9個(gè)立方數(shù)字:
等
四.系統(tǒng)的使用說(shuō)明與安裝
4.1運(yùn)行環(huán)境要求
Windows98
Personal Web Server 3.0(PWS)
Microsoft? Access 2000 (9.0.2812)
4.2安裝設(shè)置
A. 將本網(wǎng)站拷貝到硬盤(pán)上的某一目錄下,如:拷貝至c:\y1下。
B. 運(yùn)行PWS,將默認(rèn)的Web站點(diǎn)主目錄設(shè)置為該目錄,如上例應(yīng)為c:\y1;
具體步驟:
a. 選擇“高級(jí)”項(xiàng);
b. 單擊“編輯屬性”按鈕,在出現(xiàn)的“編輯屬性”對(duì)話框中的“目錄”項(xiàng)中填入“c:\y1”,其他不變,確定;
C. 設(shè)置啟動(dòng)默認(rèn)文檔為:yy.asp
致謝
通過(guò)這次畢業(yè)設(shè)計(jì),使我感到高科技、新知識(shí)的力量。這次畢業(yè)設(shè)計(jì)過(guò)程中,得到了長(zhǎng)沙市工商職業(yè)中專(zhuān)學(xué)校的大力支持,給我提供了舒適的工作學(xué)習(xí)環(huán)境,也得到了科大老師、教授的精心指導(dǎo),在此表示衷心的感謝!
五.參考文獻(xiàn)
[1]李世杰 Active Server Pages(ASP)3.0 網(wǎng)頁(yè)設(shè)計(jì)手冊(cè) 北京:清華大學(xué)出版社 1999
[2]前沿電腦圖像工作室 巧學(xué)巧用Dreamweaver、Fireworks、Flash制作網(wǎng)頁(yè) 北京:人民郵電出版社
[3]ASP入門(mén)與實(shí)例演練薄 小志編著 中國(guó)青年出版社
【校園網(wǎng)站設(shè)計(jì)】相關(guān)文章:
網(wǎng)站策劃及網(wǎng)站設(shè)計(jì)白皮書(shū)08-12
網(wǎng)站設(shè)計(jì)開(kāi)題報(bào)告07-29
網(wǎng)站設(shè)計(jì)分析報(bào)告08-20
網(wǎng)站設(shè)計(jì)規(guī)劃書(shū)08-05
校園網(wǎng)站策劃書(shū)08-16