1000部丰满熟女富婆视频,托着奶头喂男人吃奶,厨房挺进朋友人妻,成 人 免费 黄 色 网站无毒下载

首頁 > 文章中心 > 正文

畢業(yè)校園網(wǎng)站建設

前言:本站為你精心整理了畢業(yè)校園網(wǎng)站建設范文,希望能為你的創(chuàng)作提供參考價值,我們的客服老師可以幫助你提供個性化的參考范文,歡迎咨詢。

畢業(yè)校園網(wǎng)站建設

校園網(wǎng)站設計

目錄

第一章:緒論……………………………………………………………………………………1

1.1設計思想……………………………………………………………………………………1

1.2開發(fā)工具的選用及介紹……………………………………………………………………1

第二章:網(wǎng)站總體分析與設計…………………………………………………………………4

2.1網(wǎng)站系統(tǒng)分析…………………………………………………………………………………4

2.2、主頁設計…………………………………………………………………………………4

2.3、數(shù)據(jù)庫設計………………………………………………………………………………8

第三章:詳細設計………………………………………………………………………………9

3.1家長學校聯(lián)絡簿……………………………………………………………………………9

3.2網(wǎng)上圖書館………………………………………………………………………………14

3.3網(wǎng)上評優(yōu)投票系統(tǒng)…………………………………………………………………………22

3.4達級考試在線查分系統(tǒng)與計數(shù)器的制作…………………………………………………24

第四章:系統(tǒng)的使用說明與安裝………………………………………………………………26

第五章:參考文獻………………………………………………………………………………27

附錄:源文件代碼………………………………………………………………………………27

致謝…………………………………………………………………………………………………28

第一章緒論

在Internet飛速發(fā)展的今天,電子數(shù)字計算機是20世紀重大科技發(fā)明之一,而互聯(lián)網(wǎng)成為人們快速獲取、和傳遞信息的重要渠道,它在人們政治、經(jīng)濟、生活等各個方面發(fā)揮著重要的作用。Internet上信息主要是通過網(wǎng)站來實現(xiàn)的,獲取信息也是要在Internet“海洋”中按照一定的檢索方式將所需要的信息從網(wǎng)站上下載下來。因此網(wǎng)站建設在Internet應用上的地位顯而易見,它已成為機關、學校、企事業(yè)單位、甚至進入尋常百姓家的信息化建設中的重要組成部分,從而倍受人們的重視。而我校為了更好的辦學,提高學校知名度,為家長和同學們提供一個友誼的橋梁,增加同學們和家長對學校一些事物的了解,建構北京市電子科技學院網(wǎng)站。

1.1設計思想

通過網(wǎng)站,全面宣傳,展示學校風采、優(yōu)點與特色,學校的活動安排與招生政策等信息內(nèi)容,使學生及家長曾加對學校的了解,增強學生、家長與學校之間的聯(lián)系,在Internet網(wǎng)上,讓學生及家長及時得到學校的重要信息,同時也幫助了學校完成部分事務,提高辦事效率,給學生、家長與學校最方便的聯(lián)系橋梁。在這里學生及家長也可以提出意見及想法,互通教學之間的意見想法,更加有效的辦好教學,和學生需要哪樣的教學方式能夠更好的吸收與接納,這些都能成為學校的參考,以便更加的提高學校的教學質(zhì)量。

1.2開發(fā)工具的選用及介紹

1.2.1ASP的優(yōu)勢

ActiveServerPages:“動態(tài)服務器網(wǎng)頁”,一般簡稱為“ASP”,ASP之所以能受到大家的重視與使用的原因,主要在于所產(chǎn)生的執(zhí)行結果都是標準的HTML格式,而且這些程序是在網(wǎng)絡服務端中執(zhí)行,使用一般的瀏覽器(如IE或Netscape)都可以正確地獲得ASP的“執(zhí)行”結果,并且將這ASP執(zhí)行的結果直接在瀏覽器中“瀏覽”,不像VBScript或JavaScript是在客戶端(Client)的瀏覽器上執(zhí)行,若使用VBScript來設計程序,客戶端(client)在IE瀏覽器中可以顯示程序執(zhí)行的結果,可是,客戶端(client)若使用Netscape瀏覽器就無法顯示VBScript的執(zhí)行結果。

1.2.2ASP的特點

ASP的特點的特點為:

1、任何開發(fā)工具皆可發(fā)展ASP

只要使用一般的文書編輯程序,如Windows記事本,就可以編輯。當然,其他網(wǎng)頁發(fā)展工具,例如,F(xiàn)rontPageExpress、FFrontPage等也都可以;不過還是建議你用記事本來寫,既省錢又方便,若是使用那些所見即所得的網(wǎng)頁編輯來寫ASP,可能會發(fā)生一些意想不到的離奇狀態(tài)。

通吃各家瀏覽由于ASP程序是在網(wǎng)絡服務器端中執(zhí)行,執(zhí)行結果所產(chǎn)生的HTML文件適用于不同的瀏覽器。

2、語言相容性高

ASP與所有的ActiveXScript語言都相容,除了可結合HTML,VBScript、JavaScript、ActiveX服務器組件來設計外,并可經(jīng)由“plug-In(外掛組件模組)的方式,使用其他廠商(ThirdParty)所提供的語言。

3、隱密安全性高

如果我們在瀏覽器中直接查看網(wǎng)頁的原始代碼,就只能看到HTML文件,原始的ASP程序代碼是看不到的!這是應屆ASP程序先于網(wǎng)站服務(WebServer)端執(zhí)行后,將結果轉換成標準HTML文件,再傳送到客戶端(Client)的瀏覽器上,因此,我們所辛苦撰寫的ASP程序并不會輕易地被看見進而被盜用。

4、易于操控數(shù)據(jù)庫

ASP可以輕易地通過ODBC(OpenDatabaseConnectivity)驅(qū)動程序連接各種不同的數(shù)據(jù)庫,例如:Access、FoxPro、dBase、Oracle等等,另外,ASP亦可將“文本文件”或是”Excel”文件當成數(shù)據(jù)庫用。

5、面向?qū)ο髮W習容易

ASP具備有面向?qū)ο螅∣object-Oriented)功能,學習容易,ASP提供了五種方便能力強大的內(nèi)建對象:Request、Response、Sever、Application以及Session,同時,若使用ASP內(nèi)建的“Application”對象或”Session”對象所撰寫出來的ASP程序可以在多個網(wǎng)頁之間暫時保存必要的信息。

6、對象名稱功能描述

RequestResponseServerSessionApplicationObjectContext從客戶端取得信息將信息送給客戶端提供一些Web服務器工具儲存在一個Session內(nèi)的用戶信息,該信息僅可被

該用戶訪問在一個ASP-Application中讓不同的客戶端共享信息可以用來配合MicrosoftTransaction服務器進行分布式事務處理,所以我選擇了ASP結合FrontPage建構北京市輕工技術學院網(wǎng)站。

第二章網(wǎng)站總體分析與設計

2.1網(wǎng)站系統(tǒng)分析

根據(jù)前面的設計思想進行分析,按照系統(tǒng)開發(fā)的基本觀點對網(wǎng)站進行分解,從內(nèi)容上可對網(wǎng)站作如下劃分:

學校風采通過學校概括、教師風采、校園之星及部分圖片等內(nèi)容來展現(xiàn)。

優(yōu)點特色通過新聞、生動活潑的教育教學欄目來展現(xiàn)。

信息通過公告欄、信息查詢等欄目來實現(xiàn),內(nèi)容有招生政策、活動安排等。

部分校務根據(jù)校務的公開程度與參與人數(shù)的多少,特選擇圖書管

理、評優(yōu)、考試查分、家校聯(lián)系四大校務在網(wǎng)上實現(xiàn)。

2.2主頁設計

網(wǎng)站主頁采用靜、動相結合的方式,即靜態(tài)的主畫面和動態(tài)的圖片相結合,體現(xiàn)學校的勃勃生氣,靜態(tài)主頁方式介紹學校風采、優(yōu)點特色、信息,對于四大校務,就得利用ASP與數(shù)據(jù)庫結合的技術建立數(shù)據(jù)庫查詢管理系統(tǒng),采用交互式的動態(tài)的web畫面來實現(xiàn)。

主頁結構圖

2.3數(shù)據(jù)庫設計

采用的數(shù)據(jù)庫是MicrosoftAccess,擬建立teach.mdb庫文件,包含如下幾個表文件:

allmessage留言信息表

Flipbooks圖書信息表

Libcategories圖書類別信息表

Lineups圖書館用戶信息表;

stud學生信息表

2.4提示

我們將提前為您介紹一下我們將使用的個別數(shù)據(jù)庫等,方便您知道更多的信息,和使用的原因。

第四頁

SQL語言介紹

2.4.1SQL基礎

SQL(StructuredQueryLanguage,結構查詢語言)是一個功能強大的數(shù)據(jù)庫語言。SQL通常使用于數(shù)據(jù)庫的通訊。ANSI(美國國家標準學會)聲稱,SQL是關系數(shù)據(jù)庫管理系統(tǒng)的標準語言。SQL語句通常用于完成一些數(shù)據(jù)庫的操作任務,比如在數(shù)據(jù)庫中更新數(shù)據(jù),或者從數(shù)據(jù)庫中檢索數(shù)據(jù)。使用SQL的常見關系數(shù)據(jù)庫管理系統(tǒng)有:Oracle、Sybase、MicrosoftSQLServer、Access、Ingress等等。雖然絕大多數(shù)的數(shù)據(jù)庫系統(tǒng)使用SQL,但是它們同樣有它們自立另外的專有擴展功能用于它們的系統(tǒng)。但是,標準的SQL命令,比如"Select"、"Insert"、"Update"、"Delete"、"Create"和"Drop"常常被用于完成絕大多數(shù)數(shù)據(jù)庫的操作。MSSQLServer就是用的Transact-SQL。

SQL語言有著非常突出的優(yōu)點,主要是:

n非過程化語言

n統(tǒng)一的語言

n是所有關系數(shù)據(jù)庫的公共語言

非過程化語言:SQL是一個非過程化的語言,因為它一次處理一個記錄,對數(shù)據(jù)提供自動導航。SQL允許用戶在高層的數(shù)據(jù)結構上工作,而不對單個記錄進行操作,可操作記錄集,所有SQL語句接受集合作為輸入,返回集合作為輸出。SQL的集合特性允許一條SQL語句的結果作為另一條SQL語句的輸入。

SQL不要求用戶指定對數(shù)據(jù)的存放方法,這種特性使用戶更易集中精力于要得到的結果;所有SQL語句使用查詢優(yōu)化器,它是RDBMS的一部分,由它決定對指定數(shù)據(jù)存取的最快速度的手段,查詢優(yōu)化器知道存在什么索引,在哪兒使用索引合適,而用戶則從不需要知道表是否有索引、有什么類型的索引。

統(tǒng)一的語言:SQL可用于所有用戶的DB活動模型,包括系統(tǒng)管理員、數(shù)據(jù)庫管理員、應用程序員、決策支持系統(tǒng)人員及許多其它類型的終端用戶。

SQL為許多任務提供了命令,其中包括:

n查詢數(shù)據(jù)

n在表中插入、修改和刪除記錄

n建立、修改和刪除數(shù)據(jù)對象

n控制對數(shù)據(jù)和數(shù)據(jù)對象的存取

n保證數(shù)據(jù)庫一致性和完整性

以前的數(shù)據(jù)庫管理系統(tǒng)為上述各類操作提供單獨的語言,而SQL將全部任務統(tǒng)一在一種語言中。

第五頁

所有關系數(shù)據(jù)庫的公共語言:由于所有主要的關系數(shù)據(jù)庫管理系統(tǒng)都支持SQL語言,用戶可將使用SQL的技能從一個RDBMS(關系數(shù)據(jù)庫管理系統(tǒng))轉到另一個,所有用SQL編寫的程序都是可以移植的。

2.4.2SQL語句

SQL功能強大,是一種完備的數(shù)據(jù)處理語言,不僅用于數(shù)據(jù)庫查詢,而且用于數(shù)據(jù)庫中的數(shù)據(jù)修改和更新,概括起來,它可以分成以下幾組:

DML(DataManipulationLanguage,數(shù)據(jù)操作語言):用于檢索或者修改數(shù)據(jù);

DDL(DataDefinitionLanguage,數(shù)據(jù)定義語言):用于定義數(shù)據(jù)的結構,比如創(chuàng)建、修改或者刪除數(shù)據(jù)庫對象;

DCL(DataControlLanguage,數(shù)據(jù)控制語言):用于定義數(shù)據(jù)庫用戶的權限。

DML組可以細分為以下的幾個語句:

SELECT:用于檢索數(shù)據(jù);

INSERT:用于增加數(shù)據(jù)到數(shù)據(jù)庫;

UPDATE:用于從數(shù)據(jù)庫中修改現(xiàn)存的數(shù)據(jù);

DELETE:用于從數(shù)據(jù)庫中刪除數(shù)據(jù)。

DDL語句可以用于創(chuàng)建用戶和重建數(shù)據(jù)庫對象。下面是DDL命令:

CREATETABLE,ALTERTABLE,DROPTABLE,CREATEINDEX,DROPINDEX

下面是一個簡單SQL語句的例子:

我們使用SQL語句來從Book中檢索‘借書證號’為‘000001’的借閱者姓名:

SELECT姓名FROMBookWHERE借書證號=‘000001’

2.4.2.1DDL與DML

數(shù)據(jù)定義語言DDL:它是用來創(chuàng)建和修改數(shù)據(jù)庫結構的一種語句,包括Create、Alter和Drop語句。

數(shù)據(jù)操作語言DML:包括數(shù)據(jù)查詢與數(shù)據(jù)更新。數(shù)據(jù)查詢主要是由Select語句完成,這一點不再贅述。而數(shù)據(jù)更新所造成的風險大大超過數(shù)據(jù)查詢。數(shù)據(jù)庫管理系統(tǒng)必須在更改期內(nèi)保護所存儲的數(shù)據(jù)的一致性,確保有效的數(shù)據(jù)進入數(shù)據(jù)庫,數(shù)據(jù)庫必須保持一致性,DBMS還必須協(xié)調(diào)多用戶的并行更新,以確保用戶和它們的更改不至于影響其它用戶的作業(yè)。

用于修改數(shù)據(jù)庫內(nèi)容的SQL語句主要有以下三個:

(1)Insert,向一個表中加入新的數(shù)據(jù)行

(2)Delete,從一個表中刪除數(shù)據(jù)行

(3)Update,更改數(shù)據(jù)庫中已經(jīng)存在的數(shù)據(jù)

Insert標準語法:

INSERTINTOtablename(col1,col2...)VALUES(value1,value2...)

第六頁

下例要將借書證號為‘000001’作為一個新的借書情況加入借書情況表OWNER中

InsertInto

owner(借書證號,圖書編號,借書日期)

values(‘000001’,‘00000001’,‘2002-9-12’)

Insert語句還可以將多行數(shù)據(jù)添加到目標表中去,在這種形式的Insert語句中,新行的數(shù)據(jù)值不是在語句正文中明確地指定的,而是語句中指定的一個數(shù)據(jù)庫查詢。添加的值來自數(shù)據(jù)庫自身的行,在某些特定的狀態(tài)下,這是非常有用的。多行Insert語句為拷貝數(shù)據(jù)提供了一種緊湊而高效的方法,但我在自己做的圖書管理系統(tǒng)中沒有使用這種方法,我在系統(tǒng)中是使用循環(huán)依照上面的用法來完成多個記錄的插入。

Update語句用于更新單表中選定行的一列或多列的值。要更新的目標表在語句中定義,Set子句則指定要更新哪些列并計算它們的值。Update語句總是包含Where語句,而且Update語句比較危險,所以您必須明確地認識到Where語句的重要性,Where語句被用來指定需要更新的行。

標準語法:

UPDATEtablename

SETcolumnname1=value1

[,columname2=value2]...

WHEREsearchcondition

Delete語句標準語法:

DELETEFROMtablenameWHEREcondition

2.4.2.2復雜操作實現(xiàn)

在信息管理系統(tǒng)中,我們往往會遇到歸類、匯總、映射、索引、子查詢等復雜操作,相應的支持與實現(xiàn)如下:

uGROUPBY方法

GROUPBY子句語法為:

SELECTcolumn1,SUM(column2)

FROM"list-of-tables"

GROUPBY"column-list";

這個GROUPBY子句將集中所有的行在一起,它包含了指定例的數(shù)據(jù)以及允許合計函數(shù)來計算一個或者多個列。

在本人的系統(tǒng)中在顯示數(shù)據(jù)時用到了此語句來對查詢所得的內(nèi)容排序然后再顯示。

u組合條件和布爾運算符

以下的SQL語句中就含有組合條件:

第七頁

SELECTcolumn1,SUM(column2)

FROM"list-of-tables"

WHERE"condition1"AND"condition2";

下面是一個示例:

SELECT身份描述

FROMID,user

WHEREID.身份編號=USER.身份編號anduser.借書證號=’000001’;

這條SQL語句是從user、id表中查找借閱證號為000001的借閱者的身份描述,第三條語句中如果其中有一個條件為假,那么就什么都沒有顯示。

uUNION子句

有些時候,需要一起瀏覽多個查詢的結果、組合它們的輸出,我們可以使用UNION關鍵字。

注意:MicrosoftSOLSever2000(以下簡寫為SQLBSever2000)是功能強大的關系型數(shù)據(jù)庫管理系統(tǒng)(RelationalDatabaseManagementSystem簡稱RDBMS)之一,越來越多的專業(yè)人士選擇SQLBSever2000開發(fā)數(shù)據(jù)庫管理程序,SQLBSever2000是Microsoft公司開發(fā)的SQLBSever的最新版本。SQLBSever是用來建立和管理數(shù)據(jù)庫的引擎。它的作用和我們熟悉的桌面型數(shù)據(jù)庫管理系統(tǒng)FOXBASE、VisualFoxPro一樣,但在存儲大容量數(shù)據(jù)方面、在數(shù)據(jù)的安全性和完整性的方面、在分布式處理和具有高效的機制等方面,像FoxPro等桌面型數(shù)據(jù)庫管理系統(tǒng)是不能實現(xiàn)的。也就是說,SQLSever不僅可以實現(xiàn)個人數(shù)據(jù)庫的管理,更適合于企業(yè)級的數(shù)據(jù)庫應用。

第八頁

第三章詳細設計

3.1家長學校聯(lián)絡簿

3.1.1功能

利用SQL語法過濾特定的家長留言意見(上面我們已經(jīng)有介紹),讓老師可以針對某位特定學生家長所發(fā)表的意見做出獨立的回答,同時,家長在發(fā)表個人意見時,若認為意見內(nèi)容涉及敏感的話題或是意見內(nèi)容涉及私人隱私,都可用“悄悄話”的方式發(fā)言,這些“悄悄話”將不會被顯示出來讓大家看到,當然,老師擁有管理的能力,只要以密碼登錄管理模式,就可以進行各個學生家長的單獨意見回復,而且還能看到家長們所留下的“悄悄話”。

3.1.2組成構造

組成構造共分成六大部分:

1,意見留言結果網(wǎng)頁guest.asp:用來顯示家長發(fā)言與老師回復內(nèi)容,同時還具備一般模式與管理模式兩種顯示方法。

2,家長發(fā)言表單網(wǎng)頁addmsg.asp:讓學生家長填寫發(fā)言內(nèi)容并選擇發(fā)言性質(zhì)。

3,家長發(fā)言數(shù)據(jù)處理ASP程序add.asp:處理家長發(fā)表的意見數(shù)據(jù),同時將這些意見數(shù)據(jù)記錄起來并將網(wǎng)頁顯示轉向至意見留言結果網(wǎng)頁。

4,老師回復表單網(wǎng)頁teachans.asp:讓老師針對某位特定學生家長所發(fā)表的意見做出獨立的回答。

5,老師回復數(shù)據(jù)處理ASP程序anssave.asp:處理老師回復的數(shù)據(jù)內(nèi)容,同時將這些意見數(shù)據(jù)起來并將網(wǎng)頁顯示轉向至意見留言結果網(wǎng)頁。

6,數(shù)據(jù)表文件allmessage:用來儲存家長發(fā)言數(shù)據(jù)與老師回復數(shù)據(jù)的Access類型數(shù)據(jù)庫文件。

“數(shù)據(jù)表文件”負責存放家長發(fā)言數(shù)據(jù)與老師回復內(nèi)容的數(shù)據(jù)記錄,為Access類型的庫文件,將它定名為:“message.mdb”

下圖為家庭聯(lián)絡簿的組成與流程圖:

家長留言:

家長姓名

第九頁

留言主題

聯(lián)絡信箱

留言內(nèi)容

發(fā)送

▼(自動進入下一步)

老師回復

3.1.3數(shù)據(jù)庫結構設計

數(shù)據(jù)庫文件”teach.mdb“中的數(shù)據(jù)表”allmessage“的欄目設置

3.1.4界面設計與重點、難點代碼的設計

數(shù)據(jù)庫與留言顯示程序網(wǎng)頁:

家長發(fā)言與老師回復的內(nèi)容數(shù)據(jù)全部儲存在數(shù)據(jù)庫中,要在網(wǎng)頁中顯示目前的家長發(fā)言與老師回復數(shù)據(jù),必須先進行數(shù)據(jù)庫的鏈接與打開,要鏈接數(shù)據(jù)庫我們必須使用ADO對象群的Connection對象;而要打開數(shù)據(jù)庫則必須使用ADO對象群的Recordset對象,程序:

第十頁

setcan=server.createobject("adodb.connection")

cn.open"fields=c:\programfiles\commonfiles\orb\datasources\msaccessdatabase’s"

setas=server.createobject("adodb.recordset")

sol="select*fromallmessageorderby留言時間desk"

rs.opensql,cn,1,1

Recordset對象是負責瀏覽與操作從數(shù)據(jù)庫取出來的數(shù)據(jù),Connection對象只負責與數(shù)據(jù)庫進行鏈接的動作,并不能使用數(shù)據(jù)庫內(nèi)的數(shù)據(jù),因此必須建立一個可以存取數(shù)據(jù)庫數(shù)據(jù)的Recordset對象,

使用RS.Open方法存取”teach.mdb”數(shù)據(jù)庫

RS.OpenSQL,CN,1,1

使用open方法來打開數(shù)據(jù)表或執(zhí)行Select指令參數(shù)設置如下:

1,參數(shù)一(SOURCE):為欲打開的數(shù)據(jù)表或SQL指令。

2,參數(shù)二(ActionConnection):指定一個已打開的數(shù)據(jù)庫對象,將此參數(shù)設為鏈接我們已經(jīng)建立好的Connection對象“CN”。

3,參數(shù)三(CursorType):指定Recordset的打開類型,1為可讀寫且可自由移動。

4,參數(shù)四(LockType):指定鎖定類型,1為只讀。

數(shù)據(jù)排序與SQL指令

1,Select指令的篩選語句:

格式:Select…From

在SQL語言中:“Select”數(shù)據(jù)表“中選取某些“欄位”的數(shù)據(jù).

2.如果要選取的數(shù)據(jù)表數(shù)據(jù)包含了一個以上的欄位,則我們可以利用“,”逗號來欄位名稱隔開。

3.如果要選取的數(shù)據(jù)表數(shù)據(jù)包含了全部的欄位,則可以利用萬用字符“*”來代表全部的欄位。

可排序數(shù)據(jù)的Select指令

1.當我們希望被選取出來的數(shù)據(jù)記錄數(shù)據(jù)能夠依據(jù)某個或某幾個欄位的內(nèi)容來排序時,只要將這些排序依據(jù)的欄位擺放在“OrderBy“保留字之后,然后將這處排序的語句連接在”Select…From“后面就行了。

2.“OrderBy”默認的排序方式是“由小排到大”,但若是希望排序方式是“由大排到小”,則我們可在欄位名稱后再加上Desk“保留字!將排序方式改為”由大排到小。

在“顯示留言意見”網(wǎng)頁中的打開數(shù)據(jù)庫ASP程序中的語句:

SELECT*Fromallmessageorderby留言日期Desk

第十一頁

功能為:從數(shù)據(jù)表“allmessage”中取出所有欄位的數(shù)據(jù),并將取出的數(shù)據(jù)記錄內(nèi)容依照留言日期“欄位使用的”由大排到小“排序方式進行排序。

留言顯示網(wǎng)頁的管理模式:

“顯示留言意見”的網(wǎng)頁就必須具備顯示模式選擇的功能,當顯示模式在一般情況時要能顯示家長們的一般性發(fā)言,同時還得將“悄悄話”的發(fā)言隱藏起來。當老師以密碼登錄成為管理模式時,則必須將一般性發(fā)言與悄悄話發(fā)言的數(shù)據(jù)全部顯示出來,同時還得讓老師們可以針對某位特定學生家長所發(fā)表的意見做出獨立的回答。

這兩個情況是通過密碼登錄管理模式的ASP程序?qū)崿F(xiàn)的:

<formmethod="post">

<%ifsession("checkedit")="yes"then%>

<inputtype="hidden"value="yes"name="goexit">

<inputtype="submit"value="離開管理模式">

<%else%>

密碼:<inputtype="password"name="password"size="4"maxlength="4">&nbsp&nbsp<inputtype="submit"value="教師管理">

<%endif%>

</form>

在這段網(wǎng)頁語句中,利用Session對象來記錄目前的工作模式。當我們第一次進入“顯示留言意見”網(wǎng)頁的時候,我們所見的網(wǎng)頁畫面一定是一般!因為Session尚未被建立,因此它的“變量”值一定不會是“yes”,所以網(wǎng)頁中會出現(xiàn)一個輸入密碼進入“教師管理”模式的欄位,只有當我們輸入密碼按下“教師管理”的按鈕組織上發(fā)ASP程序中的進入管理模式語句后,Session對象才會被建立,同時,“checkedit”Session對象變量值被設置為“yes”,所以我們就進入了能將一般性發(fā)言與悄悄話發(fā)言的數(shù)據(jù)全部顯示出來,同時還讓教師們可以針對某位特定學生家長所發(fā)表的意見做出獨立回答的管理模式頁面。

留言顯示網(wǎng)頁的分頁:

當家長的發(fā)言與老師回復的數(shù)據(jù)筆數(shù)太多時,一次要將全部的數(shù)據(jù)內(nèi)容顯示在網(wǎng)頁中,等待網(wǎng)頁下載的時間太長了,因此采用固定筆數(shù)分頁瀏覽方式來顯示網(wǎng)頁。

要進行分頁顯示,得先知道目前有多少筆的留言數(shù)據(jù),而留言數(shù)據(jù)筆數(shù)可以通過Recordset對象的“Recordcount”(記錄個數(shù))屬性得知,我們將每10筆數(shù)據(jù)為一單位分頁顯示:

count=rs.recordcount

第十二頁

ifcount/10>(count\10)then

totalpage=(count\10)+1

elsetotalpage=(count\10)

endif

“/”為浮點數(shù)除法,“\”為整數(shù)除法。

跳頁選擇的ASP程序語句

所有的發(fā)言數(shù)據(jù)采用固定筆數(shù)分頁瀏覽的方式來顯示后,還要提供一個跳頁鏈接顯示的功能,讓瀏覽者可以選擇希望瀏覽的頁次進得瀏覽,ASP程序語句:

pagecount=0

rs.movefirst

ifRequest.QueryString("topage")<>""thenpagecount=cant(Request.QueryString("topage"))

ifpagecount<=0thenpagecount=1

ifpagecount>totalpagethenpagecount=totalpage

RS.Open(pagecount-1)*10

發(fā)言表單網(wǎng)頁制作

inserttu3

表單的參數(shù):

表單的Action參數(shù):Action參數(shù)是用來指定Server端處理此一表單數(shù)據(jù)內(nèi)容的程序,此處表單處理ASP程序為“add.asp“,

表單的Mouthed參數(shù):要將表單傳送至Server端的方式有兩種,設置值分別為GET及POST,若設置為POST,則瀏覽器會等Server端來讀取數(shù)據(jù),若設置為GET,則當我們按下送出按鈕時,瀏覽器會立即將表單中的數(shù)據(jù)內(nèi)傳送出去。利用POST方法,在傳送的數(shù)據(jù)上將不受限制,利用GET方法傳送的數(shù)據(jù)量則大約只有2K左右。

留言處理程序:

要將家長發(fā)言數(shù)據(jù)作后續(xù)處理及將這些數(shù)據(jù)內(nèi)容存入數(shù)據(jù)庫,須利用添加數(shù)據(jù)記錄的InsertInto指令,然后再寫入數(shù)據(jù)庫文件中:

Insetinto指令語句格式:

Insertinto數(shù)據(jù)表名(欄目名)values(欄目值)

sol="insertintoallmessage(家長姓名,留言主題,聯(lián)絡信箱,留言內(nèi)容,私人公開,留言時間,班級)values("

第十三頁

sol=sol&"''''"&parent&"'''',"

sol=sql&"''''"&subject&"'''',"

sol=sql&"''''"&email&"'''',"

sol=sql&"''''"&memo&"'''',"

sol=sql&"''''"&personal&"'''',"

sol=sql&"''''"&now&"'''',"

sol=sql&"''''"&bj&"'''')"

unexecutedsol

回復表單程序網(wǎng)頁

必須讓老師們可以針對某位特定學生家長所發(fā)表的意見做出獨立的回答,

使用Select…From…Where篩選語句

sol="select*fromallmessagewhere(編號="&ID&")"

rs.opensql,cn,1,3

然后將特定的家長發(fā)言數(shù)據(jù)放在表單,方法是將數(shù)據(jù)庫中的數(shù)據(jù)取出來,然后放在表單欄位中:

“家長姓名“欄位網(wǎng)頁語句標簽

<tdbicolor="#CCCCFF"><fontsize="2"><%=RS("家長姓名")%><font></td>

“留言主題“欄位網(wǎng)頁語句標簽

<tdbicolor="#CCCCFF"><fontsize="2"><%=RS("留言主題")%></font></td>

“留言內(nèi)容“欄位網(wǎng)頁語句標簽

<tdbicolor="#CCCCFF"><fontsize="2"><%=RS("留言內(nèi)容")%><font></td>

老師在回復欄位中所填入的數(shù)據(jù),必須送給處理老師回復數(shù)據(jù)的ASP程序”anssave.asp”來記錄以及處理這些回復數(shù)據(jù)。當老師填寫好回復發(fā)言的數(shù)據(jù)后按下“送出回復”按鈕后,表單中的數(shù)據(jù)內(nèi)容就會以“POST”的方式由SEVER端讀取,然后將數(shù)據(jù)內(nèi)容交由處理老師回復數(shù)據(jù)的ASP程序“anssave.asp”來將數(shù)據(jù)內(nèi)容寫入數(shù)據(jù)庫。

3.2網(wǎng)上圖書館

網(wǎng)上圖書館將學校圖書館圖書放到網(wǎng)絡上供人借閱,這樣不僅方便了校內(nèi)的學生與教職員工使用圖書館的資源,還為圖書館管理員提供了一種簡便地管理圖書館的方法.圖書管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應用程序功能完備,易使用等特點。

因此本人結合開入式圖書館的要求,對MSSQLServer2000數(shù)據(jù)庫管理系統(tǒng)、SQL語言原理、Delphi應用程序設計,Delphi數(shù)據(jù)庫技術進行了較深入的學習和應用,主要完成對圖書管理

第十四頁

系統(tǒng)的需求分析、功能模塊劃分、數(shù)據(jù)庫模式分析,并由此設計了數(shù)據(jù)庫結構和應用程序。系統(tǒng)運行結果證明,本文所設計的圖書管理系統(tǒng)可以滿足借閱者、圖書館工作人員和高級管理員三方面的需要。

3.2.1功能及應用需求

功能:

網(wǎng)上圖書館系統(tǒng)可以進行圖書的出借和歸還.還可以在系統(tǒng)中按照多種字段對圖書進行查找,還可以瀏覽某個種類的所有圖書.該應用程序也為圖書館管理員提供了一些功能,如添加、編輯以及刪除圖書等,或者在分類層次結構中添加新的種類。

應用需求分析:

圖書管理系統(tǒng)需要滿足來自三方面的需求,這三個方面分別是圖書借閱者、圖書館工作人員和圖書館管理人員。圖書借閱者的需求是查詢圖書館所存的圖書、個人借閱情況及個人信息的修改;圖書館工作人員對圖書借閱者的借閱及還書要求進行操作,同時形成借書或還書報表給借閱者查看確認;圖書館管理人員的功能最為復雜,包括對工作人員、圖書借閱者、圖書進行管理和維護,及系統(tǒng)狀態(tài)的查看、維護并生成催還圖書報表。

圖書借閱者可直接查看圖書館圖書情況,如果圖書借閱者根據(jù)本人借書證號和密碼登錄系統(tǒng),還可以進行本人借書情況的查詢和維護部分個人信息。一般情況下,圖書借閱者只應該查詢和維護本人的借書情況和個人信息,若查詢和維護其他借閱者的借書情況和個人信息,就要知道其他圖書借閱者的借書證號和密碼。這些是很難得到的,特別是密碼,所以不但滿足了圖書借閱者的要求,還保護了圖書借閱者的個人隱私。

圖書館工作人員有修改圖書借閱者借書和還書記錄的權限,所以需對工作人員登陸本模塊進行更多的考慮。在此模塊中,圖書館工作人員可以為圖書借閱者加入借書記錄或是還書記錄,并打印生成相應的報表給用戶查看和確認。

圖書館管理人員功能的信息量大,數(shù)據(jù)安全性和保密性要求最高。本功能實現(xiàn)對圖書信息、借閱者信息、總體借閱情況信息的管理和統(tǒng)計、工作人員和管理人員信息查看及維護。圖書館管理員可以瀏覽、查詢、添加、刪除、修改、統(tǒng)計圖書的基本信息;瀏覽、查詢、統(tǒng)計、添加、刪除和修改圖書借閱者的基本信息,瀏覽、查詢、統(tǒng)計圖書館的借閱信息,但不能添加、刪除和修改借閱信息,這部分功能應該由圖書館工作人員執(zhí)行,但是,刪除某條圖書借閱者基本信息記錄時,應實現(xiàn)對該圖書借閱者借閱記錄的級聯(lián)刪除。設計不同用戶的操作權限和登陸方法,對所有用戶開放的圖書查詢,借閱者維護借閱者個人部分信息,借閱者查看個人借閱情況信息。

第十五頁

3.2.2系統(tǒng)的層次結構

下圖的每個方框代表校園圖書館網(wǎng)站中的一個頁面。除了只包含HTML的Search頁面外,其他的均為ASP頁面。因為每個圖書的頁面都不同,所以大多數(shù)的頁面實際上都是多頁面。

3.2.3數(shù)據(jù)庫設計

本系統(tǒng)共使用3個數(shù)據(jù)表:

Flipbooks表包含與圖書有關的所有數(shù)據(jù)。該表中的字段內(nèi)容的圖書的通用信息。另外,對于已經(jīng)出借的圖書,該表中還包含借閱該圖書的用戶的ID號,以及圖書的狀態(tài)。

表視圖如下:

字段名字段類型意義字段名字段類型意義

Booked數(shù)字書號Status文本狀態(tài)

Title文本著者Number數(shù)字學好

Author文本主題Checkedoutto數(shù)字用戶id

Subject文本書名Reservedby文本描述

IBM號Keywords關鍵字Description主題文本

LibCategories表包含Library中的所有類別,在訪問者瀏覽圖書列表時將會用到這些類別。每個類別都可以作為另外類別的父類別。有一個特殊的類別,Top-Level,沒有出現(xiàn)在類別列表中,但是可以作為其他任何類別的父類別。

字段名意義字段類型

Categoryname類別文本(null)

parentcategory父類別文本(null)

Lineups表包含可以訪問圖書館網(wǎng)站的用戶信息。該表包含一些通用的信息字段,比如用于進入圖書館的用戶密碼等。

字段名意義字段類型字段名意義字段類型

emptied用戶id(主鍵nonull)數(shù)字password用戶密碼文本

name用戶姓名文本manage管理員代號數(shù)字

emailaddress用戶郵箱文本

第十六頁

圖書館數(shù)據(jù)庫的數(shù)據(jù)關系。其中表Lineups和表LibCategories與表Flipbooks之間都是一對多的關系。每個雇員都可以借閱多本圖書,每個類別都可以包含多本圖書。

3.2.3界面設計與重點代碼的設計

網(wǎng)上圖書館系統(tǒng)有兩種用戶,一是管理員。另一種是只允許使用圖書館系統(tǒng),而沒有管理功能的一般用戶。訪問者進入網(wǎng)站,首先要進行登錄。當借閱者正確登錄到系統(tǒng)后,此功能將被激活,使用戶能查看到自身的借閱情況。在此系統(tǒng)中,信息的顯示一般用ListView來實現(xiàn),只在較少的情況下用到了Degrade,因為我覺得ListView更好實現(xiàn),并能使信息數(shù)據(jù)對用戶的完全分離

訪問者輸入E-mail地址和密碼來登錄,然后單擊“登錄”按鈕。輸入的數(shù)據(jù)提交后與數(shù)據(jù)庫中的用戶表進行匹配。

須創(chuàng)建一個記錄來保存基于訪問者登錄的用戶信息

setRefined=conn.Execute("selectEmptied,ManagerfromLineupswhere"_

&"EmailAddress=''''"&Request.Form("EmailAddress")&"''''and"_

&"Password=''''"&Request.Form("Password")&"''''")

ifRSFindEmp.EOFthen

TheMessage="密碼或email地址不對."

Else

Session("Emptied")=Refined("Emptied")

Session("Manager")=Refined("Manager")

Response.Redirect"../yk.htm"

endif

表單域EmailAddress和Password用于Where了句中來獲取一個記錄。如果訪問者輸入了一個無效的用戶名,則記錄集中將不會返回匹配的記錄。我們可以通過查看EOF標記來判斷一個記錄集是否為空。為空,則訪問者將被拒絕進入該系統(tǒng)。不為空,則訪問者的Emptied值和Manager值將從記錄集中返回。寫入Session變量,變量將在整個網(wǎng)站的所有網(wǎng)頁中都是有效的。這些變量的存在與否及其取值將用于確定是否允許進入一個特定的網(wǎng)頁,同時也用于訪問者進行書目的歸還和借閱操作。

圖書館菜單頁面:

圖書館菜單頁面包含指向其他4個頁面的鏈接:管理頁面、搜索頁面、圖書列表頁

第十七頁

面和主頁面。還有一個可顯示用戶所借書籍的按紐。如果訪問者是圖書館管理員,則菜單界面如圖所示。如果訪問者不是圖書館管理員,則看到如圖所示的界面。非管理員的訪問者的界面上沒有指向管理員菜單頁面的鏈接。

實現(xiàn)辦法:訪問者登錄時在登錄頁面上的創(chuàng)建的會話變量Session用于從數(shù)據(jù)庫中獲取訪問者的有關信息,表示它是否是管理員。如果值為1,就表明訪問者是一個管理員,則用如下代碼寫入一個指向管理員頁面的鏈接:

<%IfSession("Manager")=1then%>

<AHREF="../html/management_menu.asp">管理員菜單</A>

<%endif%>

通過按紐B1是否為空來判斷要不要顯示用戶所借圖書,利用一個記錄集來獲取訪問者已經(jīng)借出了的所有圖書的列表。

IfNOTisempty(Request.Form("B1"))then

setRSBooks=conn.Execute("selectBookID,TitlefromLibBookswhere"_

&"CheckedOutTo="&Session("Emptied"))

endif

再用循環(huán)語句將所借書以表格形式顯示出來。

<Tableborder=1width="90%">

<%ifNOTisempty(Request.Form("B1"))then

DoUntilRSBooks.EOF%>

<TR>

<TDWIDTH=40%height="20"><%Response.WriteRSBooks("Title")%></td></tr>

<%RSBooks.MoveNext

loop

endif

%>

</table>

循環(huán)將遍歷Rebooks記錄集中的每個記錄,直到該記錄集結束:

該網(wǎng)站中的所有ASP頁面都會在訪問者訪問之前對其進行登錄檢查。這樣就可以避免訪問者通過輸入某個頁面地址然后在沒有登錄的情況下直接進入該頁面的情況發(fā)生。此外,每個管理頁面都要確認訪問者是管理員。

管理菜單頁面:

管理菜單頁面有一個HTML表單,根據(jù)選擇的按鈕的不同,可以進行5種不同的操作:

第十八頁

圖書的歸還、圖書的編輯、圖書的刪除、圖書的添加和類別的添加。不管選擇了哪一個按鈕,該表單都提交人其自身進行處理。

要進行圖書的歸還、圖書的編輯、圖書的刪除三種操作,須先進行搜索,找到該書后,由圖書Book.asp返回一個鏈接:

<%IfSession("Manager")=1then%>

<AHREF="../html/management_menu.asp?Title=<%response.WriteRSBooks("Title")%>&BOOKID=<%response.writeRSBooks("BOOKID")%>">管理員菜單</A>

<%endif%>

而管理者頁面通過下列語句

<%=request.querystring("title")%>

<inputtype=hiddenname="BOOKID1"value="<%=request.querystring("BOOKID")%>>

這樣就將所找到的書的書號BookID、書名Title傳遞管理者頁面。再進行所須操作。共有3個不同的銨紐,可以進行3種操作。若單擊“修改”鈕:

則重定向到編輯圖書頁面,同時把Bookid傳遞給該頁面。

Response.Redirect"./edit_book.asp?BOOKID="&request("BOOKID1")

將其他的情況需要建立到數(shù)據(jù)庫的連接:

setconn=server.createobject("adodb.connection")

Conn.Open("FILEDSN=c:\ProgramFiles\CommonFiles\ODBC\DataSources\msaccessdatabase’s")

ifNOTisempty(Request.Form("Delete"))andrequest("BOOKID1")<>""then

conn.Execute"deletefromLibBookswhereBOOKID="&request("BOOKID1")

endif

if(NOTisempty(Request.Form("checkin")))andrequest("BOOKID1")<>""then

conn.Execute"updateLibBookssetcheckedoutto=0,status=''''Available''''whereBookID="&Request("BOOKID1")

endif

頁面中的添加新的種類部分包含一個文本控件和一個選擇控件。其中選擇控件是用所有已經(jīng)存在的類別列表進行填充的,包括特殊類別Toplevel,該類別表明當前類別是處于類別層次結構中的最頂層。代碼如下:

先用一個記錄集來填充父類別選擇控件:

setRSCategories=conn.Execute("selectCategoryNamefromLibCategoriesorderby

第十九頁

CategoryName")

再用下列循環(huán)語句:

<%DoUntilRSCategories.EOF%>

<OPTIONVALUE="<%response.WriteRSCategories("CategoryName")%>"><%response.writeRSCategories("CategoryName")%></OPTION>

<%RSCategories.MoveNextLoop%>

遍歷RSCategories記錄集中的每個記錄,并作為一個選項添加到列表中,而記錄集中CategoryName同時作為顯示值和傳遞值:

本頁面還包含一個指向添加圖書頁面的鏈接。

搜索結果頁面:

搜索頁面的代碼獲取與訪問者查找規(guī)則相匹配的圖書,然后將這些圖書顯示給訪問者。

搜索頁面上的表單包含一個選擇控件和一個文本控件。選擇控件中的選項是用可搜索的字段填充的:

需要用一個記錄集來保存與訪問者的查找規(guī)則相匹配的記錄:

setRSBooks=conn.Execute("selectBookID,Author,Title,SubjectfromLibBookswhere"_

&Request.Form("SearchField")&"Like''''%"&Request.Form("SearchCriteria")&"%''''")

@注意:,符號%表示的是一個廣義搜索。這一點類似于ACCESS中的符號*。

然后將所找到的書以表格形式顯示出來。代碼如下:

<%DoUntilRSBooks.EOF%>

<TRVALIGN="top"ALIGN="left">

<TDWIDTH=40%height="20"><B>書名:</B><AHREF="../html/book.Asp?BookID=<%Response.WriteRSBooks("BookID")%>"><%Response.WriteRSBooks("Title")%></A></TD>

<tdwidth=20%height="20"><B>作者:</B><%Response.WriteRSBooks("Author")%></td>

<tdwidth=30%height="20"><B>主題:</B><%Response.WriteRSBooks("Subject")%></td>

<%RSBooks.MoveNextLoop%>

圖書頁面

圖書頁面的代碼顯示圖書的有關信息,以及管理圖書的出借操作。

該頁面通過Querystring傳遞BookID

第二十頁

ifisempty(Request.QueryString("BookID"))then

Response.Redirect"./search.html"

endif

如果其中不存在,則訪問者將被重定向到搜索頁面:

如果同時傳遞表單中包含的變量Action不為空,則表明訪問者正借閱該圖書:

ifNotisempty(Request.QueryString("Action"))then

在這種情況下,需要將圖書狀態(tài)改為Checkout,同時需要將Checkedoutto字段修改為該訪問者:

Conn.Execute"updateLibBookssetStatus=''''CheckedOut'''',"_

&"CheckedOutTo="&Session("Emptied")&"whereBookID="_

&Request.QueryString("BookID")

Response.Redirect"./library_menu.asp"

endif

然后將該訪問者重定到圖書館菜單頁面:

下一步,利用圖書的狀態(tài)來確定不同的鏈接

未借出時鏈接如下:

IfRSBooks("status")="Available"then

LinkText="<AHREF=""../html/book.Asp?Action=CheckOut&BookID="_

&Request.QueryString("BookID")&""">借這本書</A>"

如果圖書已經(jīng)借出,就創(chuàng)建一個不同的消息,并將鏈接設置為指向Librarymenu頁面:

LinkText="<AHREF=""../html/library_menu.asp"">圖書已出借,返回主菜單。</A>"

最后根據(jù)是否是管理員,顯示管理員菜單鏈接。

<%IfSession("Manager")=1then%><AHREF="../html/management_menu.asp?Title=<%response.WriteRSBooks("Title")%>&BOOKID=<%response.writeRSBooks("BOOKID")%>">管理員菜單</A><%endif%>

3.3網(wǎng)上評優(yōu)投票系統(tǒng)

3.3.1功能

能實現(xiàn)全校性的評選,快捷、公平,且有效,不允許做票。

3.3.2組成構造

這個系統(tǒng)由3個部分組成——投票頁面vote.htm,處理投票結果的腳本,顯示投票頁面。

第二十一頁

3.3.3數(shù)據(jù)表的設計:

3.3.4界面設計與重點、難點代碼設計

投票頁面

該頁面是一個純HTML文件,它讓用戶選擇自己想選舉的候選人,并填寫自己的詳細資料,以確認投票的有效性。頁面顯示如圖所示。

表單處理腳本

在vote.htm中各項數(shù)據(jù)都填寫完畢后,單擊確定投票按鈕,表單的數(shù)據(jù)就被提交,

本次評優(yōu)共有8個候選人,但只能選一個。故用復選框。

投票的有效性通過是否是本校學生,且是否投過票來判斷。

Ifrequest("passno")<>""then

sol="select*fromstudwherepassword="&"''''"&request("passno")&"''''"&"andyeti=0"

setas=unexecuted(sol)

ifreshelfthen%>

<h2align=center><%response.write"你無權投票"%></h1>

本設計允許少選,不允許多選。通過判斷Vote投票界面?zhèn)鬟f過來的復選按紐值的長度看是否多選。

Vow=request("candy")

iflens(vow)>8then%>

<h2align=center><%response.write"多選了,無效"%></h1>

然后根據(jù)所投的票將對應候選人的投票結果字段加1,同時將該投票人的已投字段置為1。

Esq.="updatestudsetyeti=1wherepassword="&"''''"&request("parson")&"''''"

unexecuted(esq.)

ifinsert(vo,"1")then

unexecuted("updatestudsetresult=result+1wherename=''''馬月穎''''")

endif

ifinset(vo,"2")then

unexecuted("updatestudsetresult=result+1wherename=''''張磊''''")

endif

ifinsert(vo,"3")then

ifinsert(vo,"4")then

unexecuted("updatestudsetresult=result+1wherename=''''宋穎''''")

第二十二頁

endif

unexecuted(esq.)

ifinsert(vo,"5")then

unexecuted("updatestudsetresult=result+1wherename=''''馬月紅''''")

endif

unexecuted(esq.)

ifinsert(vo,"6")then

unexecuted("updatestudsetresult=result+1wherename=''''孫金輝''''")

endif

unexecuted(esq.)

ifinsert(vo,"7")then

unexecuted("updatestudsetresult=result+1wherename=''''王海軍''''")

endif

unexecuted("updatestudsetresult=result+1wherename=''''陳雪然''''")

endif

ifinset(vo,"8")then

unexecuted("updatestudsetresult=result+1wherename=''''宋佳琦''''")

endif%>

顯示當前投票情況show.asps

由于投票處理頁面已經(jīng)完成了絕大部分的工作,所以顯示結果頁面就很簡單了,其功能是從Stud表文件中讀取候選人所得票數(shù),顯示在頁面上。

@值得注意的代碼主要有以下幾處:

該頁面有自動刷新功能,使在線用戶可以盡快的看到最新的選舉情況。我們這里設定每隔30秒鐘自動刷新一次。

<Metahttp-equiv="refresh"content="10;URL=show.asp">

顯示投票時,我們采用了while循環(huán),把候選人及其得票數(shù),整齊地顯示在一個表格中,這種技術在數(shù)據(jù)庫查詢結果的顯示中也經(jīng)常用到。代碼如下:

<%whilenotself%>

<tr>

<tdwidth="100%"><center>

<fontcolor="#8000ff"><big>

第二十三頁

<%=he("name")&""&she("result")&"票"%>

</big></font>

</center>

</td>

</tr>

<%hs.movenext%>

<%wend%>

3.4達級考試在線查分系統(tǒng)與計數(shù)器的制作

3.4.1功能:

它提供了在線查看成績。考生可以在網(wǎng)上使用這一系統(tǒng),通過輸入準考證編號來查詢達級考試的結果。

3.4.2數(shù)據(jù)表的設計

與評優(yōu)系統(tǒng)共用Stud表,表設計同上。

3.4.3界面設計與重點難點代碼的設計

該模塊需要查詢者輸入準考證號后來查看結果。若ID1不為空時,表示有表單輸入,開始查詢數(shù)據(jù)庫。使用SELECT的SQL指令查詢數(shù)據(jù)庫的數(shù)據(jù)。先設定SQL指令,查詢ID符合準考證編號Request.Form("ID1")的數(shù)據(jù),下個“Execute”指令,即可開始執(zhí)行存取、查詢數(shù)據(jù)的動作了。并將查詢結果儲存到Recordsets組件RS中。

IFRequest.Form("ID1")<>""THEN

SetConn=Server.CreateObject("ADODB.Connection")

Conn.Open("FILEDSN=c:\ProgramFiles\CommonFiles\ODBC\DataSources\msaccessdatabase’s")

SQL="SELECTname,id,scoreFROMstudWHEREid=''''"&Request.Form("ID1")&"''''"

SetRS=Conn.Execute(SQL)

若考試通過,則顯示考試的結果,包括姓名、準考證編號、總分和考試結果,分別由RecordSets組件的RS(1)、RS(2)、RS(3)、RS(4)得到。FS.Field.Count表示RecordSets組件的域的總數(shù),由“forI=1toRS.Fields.count-1”,取得RS(I)各域的數(shù)據(jù)。配合<Table>表格的HTML語法,將結果填入表格的各單元格中。若還有下一個數(shù)據(jù),就使用RS.MoveNext移到下一個位置。

3.4.4頁面訪問計數(shù)器的制作

利用文件處理組件FILESYSTEM的強大功能來制作,比用Application對象計數(shù)器要好,Application計數(shù)器當有20分鐘沒有人連上該網(wǎng)頁或關機時,計數(shù)器會被歸零。而文件計數(shù)

第二十四頁

器卻不會因時間而消失。我用Count.txt存放訪問人次。代碼如下:

whichfile=server.mappath("pic\count.txt")

setmyfile=server.createobject("scripting.filesystemobject")創(chuàng)建一個

setthisfile=myfile.opentextfile(whichfile)組件對象

next

visit=thisfile.readline

thisfile.close讀取計數(shù)器數(shù)據(jù)文件Count.txt中的計數(shù)數(shù)據(jù)

visit=visit+1記錄自加一次

length=Len(visit)

forI=1tolength

response.write"<imparc="&mid(visit,i,1)&".jog></imp>"將記錄的數(shù)據(jù)用圖片顯示出來

next

setthisfile=myfile.createtextfile(whichfile,1)將新計數(shù)數(shù)據(jù)寫入文件thisfile.writeline(visit)

setmyfile=nothing

數(shù)字圖片我利用PHOTOSHOP中的文字特效制作了9個立方數(shù)字

第二十五頁

第四章系統(tǒng)的使用說明與安裝

4.1運行環(huán)境要求

1、此系統(tǒng)只能在以下環(huán)境中運行:

Windows98

PersonalWebServer3.0(PWS)

Microsoft?Access2000(9.0.2812)

4.2安裝及設置

1、安裝:

A.將本網(wǎng)站拷貝到硬盤上的某一目錄下,如:拷貝至E:\MYY下。

B.運行PWS,將默認的Web站點主目錄設置為該目錄,如上例應為E:\MYY;

具體步驟:

a.選擇“高級”項;

b.單擊“編輯屬性”按鈕,在出現(xiàn)的“編輯屬性”對話框中的“目錄”項中填入“E:\MYY”,其他不變,確定;

2、設置

C.設置啟動默認文檔為:MYY.asp

第二十六頁

第五章參考文獻

[1]李世杰ActiveServerPages(ASP)3.0網(wǎng)頁設計手冊北京:清華大學出版社1999

[2]前沿電腦圖像工作室巧學巧用Dreamweaver、Fireworks、Flash制作網(wǎng)頁北京:人民郵電出版社

[3]ASP入門與實例演練薄小志編著中國青年出版社

[4]SQLSever中文版基礎培訓教程劉遵仁于忠清編著人民郵電出版社

附錄:

INSERT用于檢索數(shù)據(jù)

SELECT用于增加數(shù)據(jù)到數(shù)據(jù)庫

UPDATE用于從數(shù)據(jù)庫中修改現(xiàn)存的數(shù)據(jù)

DELETE用于從數(shù)據(jù)庫中刪除數(shù)據(jù)

DML用于檢索或者修改數(shù)據(jù);

DDL用于定義數(shù)據(jù)的結構,比如創(chuàng)建、修改或者刪除數(shù)據(jù)庫對象

DCL用于定義數(shù)據(jù)庫用戶的權限

第二十七頁

致謝:

通過這次校園網(wǎng)站設計,使我曾加了很多的知識,也掌握了很多網(wǎng)頁設計的操作技巧,雖然仍有很多不足之處,有在改良和增進,但這以不重要,重要的是我對網(wǎng)頁的設計又有了更深的了解。這次畢業(yè)設計過程中,得到了很多的網(wǎng)絡設計朋友的幫助和老師的指點,才得以完成,他們給我提供了很多有關網(wǎng)頁設計的書和材料,并抽出時間幫我修改與糾正,在此表示衷心的感謝!

主站蜘蛛池模板: 大英县| 伊川县| 南投县| 枣庄市| 绍兴市| 报价| 大渡口区| 临沂市| 康乐县| 鄂尔多斯市| 恩平市| 宁强县| 芷江| 青冈县| 凌云县| 静宁县| 泽普县| 文安县| 临江市| 萝北县| 洞头县| 木兰县| 安溪县| 宿州市| 建瓯市| 东光县| 喀喇沁旗| 克山县| 板桥市| 区。| 南康市| 峨边| 夏河县| 师宗县| 武穴市| 济源市| 即墨市| 汽车| 梅州市| 徐汇区| 洛川县|