【終稿】免費(fèi)電大、自考、本科、大專畢業(yè)論文正稿(網(wǎng)絡(luò)社區(qū)服務(wù)管理系統(tǒng)的設(shè)計(jì))
xx 廣播電視大學(xué)開放教育??朴?jì)算機(jī)網(wǎng)絡(luò)技術(shù)專業(yè)畢業(yè)設(shè)計(jì)網(wǎng)絡(luò)社區(qū)服務(wù)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)姓 名: xxx 學(xué) 號(hào): 10340xxxxxxxx 專 業(yè): 計(jì)算機(jī)網(wǎng)絡(luò)技術(shù) 班 級(jí): 20xx 秋計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)???指導(dǎo)老師: xxxx 二xx 年十一月八日摘 要社區(qū)服務(wù)與管理系統(tǒng)是利用計(jì)算機(jī)技術(shù)來管理社區(qū)的居民信息,其主要意義在于避免傳統(tǒng)手寫方式產(chǎn)生的數(shù)據(jù)丟失、書寫錯(cuò)誤、勞動(dòng)強(qiáng)度高且時(shí)間和空間上限制的等問題。通過計(jì)算機(jī)聯(lián)網(wǎng)后,可以實(shí)現(xiàn)數(shù)據(jù)的遠(yuǎn)程訪問和共享,從而方便管理并節(jié)約成本。本文介紹了一個(gè)社區(qū)服務(wù)與管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。該系統(tǒng)完整地分析了社區(qū)服務(wù)與管理系統(tǒng)的業(yè)務(wù)需求,并進(jìn)行了詳細(xì)設(shè)計(jì)。在此基礎(chǔ)上實(shí)現(xiàn)了其中的基本功能,包括:居民信息管理、外來人員信息管理、信息公告、用戶注冊(cè)、用戶論壇等功能。同時(shí),系統(tǒng)對(duì)用戶進(jìn)行了分級(jí)管理,提高了系統(tǒng)的安全性。在技術(shù)上,該系統(tǒng)選擇了三層的網(wǎng)絡(luò)體系結(jié)構(gòu)。客戶端技術(shù)綜合采用HTML、VBScript、JavaScript 等技術(shù)提供用戶界面;應(yīng)用服務(wù)器端使用 IIS,并采用 ASP 動(dòng)態(tài)網(wǎng)頁(yè)編程技術(shù)實(shí)現(xiàn)業(yè)務(wù)邏輯;數(shù)據(jù)庫(kù)服務(wù)器采用 SQL Server 2000 關(guān)系數(shù)據(jù)庫(kù)。應(yīng)用服務(wù)器利用 ADO 技術(shù)與數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行透明的數(shù)據(jù)傳輸。關(guān)鍵字:社區(qū)管理系統(tǒng);數(shù)據(jù)庫(kù);論壇;ASP目 錄論文總頁(yè)數(shù):24 頁(yè)1 引言 11.1 目前背景和國(guó)內(nèi)外現(xiàn)狀 11.2 系統(tǒng)的主要設(shè)計(jì)方法 11.3 系統(tǒng)開發(fā)條件 12 社區(qū)管理系統(tǒng)分析 12.1 系統(tǒng)目標(biāo) 12.2 可行性分析 22.2.1 技術(shù)可行性 22.2.2 經(jīng)濟(jì)可行性 32.2.3 營(yíng)運(yùn)可行性分析 32.3 需求分析 53 社區(qū)管理系統(tǒng)總體設(shè)計(jì) 63.1 系統(tǒng)體系結(jié)構(gòu)選擇 63.2 系統(tǒng)功能模塊設(shè)計(jì) 73.3 功能模塊圖和說明 84 社區(qū)管理系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)與邏輯實(shí)現(xiàn) 94.1 數(shù)據(jù)庫(kù)選擇和簡(jiǎn)介 94.2 社區(qū)服務(wù)與管理系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì) 94.2.1 數(shù)據(jù)庫(kù)的表結(jié)構(gòu)設(shè)計(jì) 94.2.2 數(shù)據(jù)庫(kù)的連接 .114.3 數(shù)據(jù)庫(kù)關(guān)系圖 .125 社區(qū)管理系統(tǒng)的實(shí)現(xiàn) .125.1 社區(qū)管理系統(tǒng)注冊(cè)和帳號(hào)管理模塊 .125.2 查看居住人員和外來人員信息模塊 .165.3 查看公告信息模塊 .165.4 意見反饋模塊 .185.5 論壇模塊 .186 難點(diǎn)及解決方法 .206.1 用戶登錄判斷 .206.2 查看意見根據(jù)不同級(jí)別用戶的顯示模式 .21結(jié) 論 .21參考文獻(xiàn) .21致 謝 .23聲 明 .241 引言1.1 目前背景和國(guó)內(nèi)外現(xiàn)狀隨著信息技術(shù)的飛速發(fā)展,特別是網(wǎng)絡(luò)和數(shù)據(jù)庫(kù)技術(shù)的發(fā)展,計(jì)算機(jī)已經(jīng)成為當(dāng)今處理信息的主要工具。數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)應(yīng)用技術(shù)中的一個(gè)重要組成部分,對(duì)于大量的數(shù)據(jù),使用數(shù)據(jù)庫(kù)來存儲(chǔ)管理將比通過文件來存儲(chǔ)管理更高效。數(shù)據(jù)庫(kù)技術(shù)在經(jīng)過幾代變革以后,出現(xiàn)了以關(guān)系數(shù)據(jù)庫(kù)產(chǎn)品為主流的數(shù)據(jù)庫(kù)時(shí)代。人們對(duì)于現(xiàn)實(shí)中的各種事物的管理已經(jīng)越來越依靠計(jì)算機(jī)進(jìn)行智能化管理,而不是靠手工輸入進(jìn)行統(tǒng)計(jì)管理。其次,當(dāng)代社會(huì),隨著社會(huì)、科技、文化和經(jīng)濟(jì)的發(fā)展,特別是計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)和通信技術(shù)的大發(fā) 展,人們?cè)陔S時(shí)隨地,都可以知道遠(yuǎn)在千里的信息。但是,現(xiàn)在許多居民小區(qū)的信息并沒有在網(wǎng)上公布,如果,遠(yuǎn)在千里之外的人要了解這個(gè)居民小區(qū)的情況,則很困難。因此,在這種狀況下,提供一種網(wǎng)絡(luò)社區(qū)服務(wù)與管理系統(tǒng)對(duì)一個(gè)社區(qū)進(jìn)行管理,使任何人在任何時(shí)候任何地點(diǎn),都可以了解到小區(qū)的信息,并且使人們可以在這個(gè)平臺(tái)上進(jìn)行交流是勢(shì)在必行。目前,在發(fā)達(dá)國(guó)家,對(duì)居民小區(qū)基本上是用軟件進(jìn)行統(tǒng)計(jì)管理,而在國(guó)內(nèi),除了在較發(fā)達(dá)的地區(qū)是用了電腦,在大多數(shù)的地方,基本上是用人工對(duì)人員信息進(jìn)行統(tǒng)計(jì)。導(dǎo)致這種狀況的原因除了許多人不懂電腦,硬件設(shè)備不到位的原因外,最主要的原因是國(guó)內(nèi)從事這方面研究的人員太少。因此,在目前這種情況下,率先進(jìn)行研究,是極具商業(yè)價(jià)值的。1.2 系統(tǒng)的主要設(shè)計(jì)方法系統(tǒng)采用的是 B/S 模式開發(fā),界面簡(jiǎn)單實(shí)用,沒有冗余頁(yè)面。此系統(tǒng)既可以在網(wǎng)站上用,也可以在局域網(wǎng)上使用。本系統(tǒng)用的是 ASP+VBScript +SQL 和少量的語句就用 vbscript 來開發(fā),采用的服務(wù)器是 IIS。系統(tǒng)有非常簡(jiǎn)潔的界面,給用戶帶來了方便。這樣用戶就可以更加方便的人性化的交流。1.3 系統(tǒng)開發(fā)條件系統(tǒng)開發(fā)費(fèi)用教少,只是需要開發(fā)人員一名,而系統(tǒng)完成后,在全國(guó)許多地方都可以用來作為小區(qū)的管理軟件。投入少,收益大。2 社區(qū)管理系統(tǒng)分析2.1 系統(tǒng)目標(biāo)以先進(jìn)的計(jì)算機(jī)管理手段和網(wǎng)絡(luò)技術(shù)設(shè)計(jì)一個(gè)網(wǎng)絡(luò)社區(qū)服務(wù)與管理系統(tǒng)管理系統(tǒng),為需要了解社區(qū)情況的人員提供信息查詢和交流等網(wǎng)絡(luò)在線服務(wù)。通過本系統(tǒng)的運(yùn)用能夠達(dá)到人力與費(fèi)用的節(jié)省、處理速度的提高、管理信息服務(wù)的改進(jìn)、人員工作效率的提高 。2.2 可行性分析在明確系統(tǒng)目標(biāo)和環(huán)境的基礎(chǔ)上,需要進(jìn)一步對(duì)系統(tǒng)的可行性進(jìn)行研究。此活動(dòng)的主要目標(biāo)是進(jìn)一步明確系統(tǒng)的目標(biāo)、規(guī)模與功能,對(duì)系統(tǒng)開發(fā)背景、必要性和意義進(jìn)行調(diào)查分析并根據(jù)需要和可能提出擬開發(fā)系統(tǒng)的初步方案與計(jì)劃??尚行匝芯渴轻槍?duì)系統(tǒng)進(jìn)行全面、概要的分析,主要包括三方面:技術(shù)可行性分析、經(jīng)濟(jì)可行性分析和營(yíng)運(yùn)可行性分析。2.2.1 技術(shù)可行性從用戶應(yīng)用角度來看,可把應(yīng)用程序系統(tǒng)的組成部分分成數(shù)據(jù)存儲(chǔ)層(DAO) 、業(yè)務(wù)處理層(SERVICE)和界面表示層(WEB)3 個(gè)層次,而應(yīng)用程序結(jié)構(gòu)可歸納為:集中式應(yīng)用程序結(jié)構(gòu)、單用戶應(yīng)用程序結(jié)構(gòu)、多層服務(wù)器應(yīng)用程序結(jié)構(gòu)、瀏覽器服務(wù)器應(yīng)用程序結(jié)構(gòu)、客戶機(jī)服務(wù)器應(yīng)用程序結(jié)構(gòu)等 5種類型。本系統(tǒng)就采用是瀏覽器服務(wù)器應(yīng)用程序結(jié)構(gòu)(即 B/S 結(jié)構(gòu)) 。此時(shí),瀏覽器發(fā)出請(qǐng)求(request) ,服務(wù)器對(duì)瀏覽器的請(qǐng)求做出回應(yīng)(response)。通過對(duì)服務(wù)功能的分布實(shí)現(xiàn)了分工服務(wù)。這樣使整個(gè)系統(tǒng)具有較好的性能并且使瀏覽器端能夠快速的運(yùn)行和顯示,而服務(wù)器可以并行地處理瀏覽器端發(fā)送的請(qǐng)求降低了瀏覽器的負(fù)荷。由于條件所限,將此系統(tǒng)的所有瀏覽器都置于一臺(tái)計(jì)算機(jī)上,以便開發(fā)以及調(diào)試運(yùn)行。系統(tǒng)開發(fā)語言是 ASP 使用數(shù)據(jù)庫(kù)是 SQL Server 2000.與 HTML 相比較, ASP 具有以下優(yōu)點(diǎn):1、利用 ASP 可以實(shí)現(xiàn)突破靜態(tài)網(wǎng)頁(yè)的一些功能限制,實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁(yè)技術(shù); 2 、ASP 文件是包含在 HTML 代碼所組成的文件中的,易于修改和測(cè)試; 3、服務(wù)器上的 ASP 解釋程序會(huì)在服務(wù)器端制定 ASP 程序,并將結(jié)果以HTML 格式傳送到客戶端瀏覽器上,因此使用各種瀏覽器都可以正常瀏覽 ASP 所產(chǎn)生的網(wǎng)頁(yè); 4、ASP 提供了一些內(nèi)置對(duì)象,使用這些對(duì)象可以使服務(wù)器端腳本功能更強(qiáng)例如可以從 web 瀏覽器中獲取用戶通過 HTML 表單提交的信息,并在腳本中對(duì)這些信息進(jìn)行處理,然后向 web 瀏覽器發(fā)送信息;5、ASP 可以使用服務(wù)器端 ActiveX 組建來執(zhí)行各種各樣的任務(wù),例如存取數(shù)據(jù)庫(kù)、發(fā)現(xiàn)那個(gè) Email 或訪問文件系統(tǒng)等;6、由于服務(wù)器是將 ASP 程序執(zhí)行的結(jié)果以 HTML 格式傳回客戶端瀏覽器,因此使用者不會(huì)看到 ASP 所編寫的原始程序代碼,可放置 ASP 程序代碼被竊由于 asp 的幾大內(nèi)置對(duì)象(response、request、session、application、server)具有向向?yàn)g覽器端傳送數(shù)據(jù)、讀取瀏覽器端數(shù)據(jù) Server 對(duì)象、記錄瀏覽器端變量和操作數(shù)據(jù)庫(kù)等功能,因此,asp 能夠?qū)崿F(xiàn)系統(tǒng)的預(yù)定功能。本系統(tǒng)所使用開發(fā)軟件是 Dreaweaver, Dreaweaver 是 Macromedia 公司最新推出的主頁(yè)編輯工具。這是一個(gè)所見即所得主頁(yè)編輯器,并帶有站點(diǎn)管理功能,讓你方便地設(shè)計(jì)和管理多個(gè)站點(diǎn),能夠大大地縮短程序人員的編程時(shí)間。2.2.2 經(jīng)濟(jì)可行性主要是對(duì)主要是對(duì)項(xiàng)目的經(jīng)濟(jì)效益進(jìn)行評(píng)價(jià),一方面是支出的費(fèi)用,其中包括設(shè)備購(gòu)置費(fèi)、軟件開發(fā)費(fèi)、管理和維護(hù)費(fèi)、人員工資和培訓(xùn)費(fèi)等。另一方面是取得的收益中不可以用錢來衡量的那部分(收益的另一部分難以用錢來表示) ?;谝话憔用裆鐓^(qū)現(xiàn)有情況,要建設(shè)網(wǎng)絡(luò)社區(qū)服務(wù)與管理系統(tǒng)需要適當(dāng)添置硬件設(shè)備,如個(gè)人電腦一臺(tái),由于該軟件是個(gè)小型軟件,不用承擔(dān)太高開發(fā)費(fèi)用。而社區(qū)的管理人員完全有能力自己使用和維護(hù)該系統(tǒng)。建立一個(gè)社區(qū)管理系統(tǒng)后,能大大減少重復(fù)性的工作過程,降低工作時(shí)間,提高工作效率。使后勤管理可以把更多時(shí)間投入到更為重要的事情中。因此,與后期各方面的收益相比前期的投入值得的。另外,系統(tǒng)運(yùn)行環(huán)境要求較低,具體如下:(1)Internet 瀏覽(2)內(nèi)存 256 兆(3)數(shù)據(jù)庫(kù):SQL Server 2000(4)裝有 windows xp 系統(tǒng)的電腦一臺(tái)因此,開發(fā)本系統(tǒng)在經(jīng)濟(jì)上,效益是遠(yuǎn)大于投入的,2.2.3 營(yíng)運(yùn)可行性分析主要是管理人員對(duì)開發(fā)信息系統(tǒng)是否支持,系統(tǒng)應(yīng)該具有操作簡(jiǎn)單、界面友好、易于理解,管理者經(jīng)過短時(shí)間的培訓(xùn)就可以較為熟練地使用該系統(tǒng)。用戶可以方便使用本系統(tǒng)的功能?;谝陨蠋c(diǎn),本系統(tǒng)的基本能夠操作步驟,可參看系統(tǒng)的流程圖如圖 2-1:成功管理員 普通用戶住戶管理外來人員信息管理發(fā)布水電費(fèi)通知意見查看與回復(fù)進(jìn)入登記出門登記刪除搬走住戶更新住戶信息新住戶登記繼續(xù)YesNo結(jié)束圖 2-1 系統(tǒng)流程圖從圖中可以看出,本系統(tǒng)用戶級(jí)別有管理員和普通用戶兩種級(jí)別,用戶按不同的方式登陸后就會(huì)有不同的操作權(quán)限,管理員具有對(duì)各類用戶的更改權(quán)限,普通用戶可以更改自己的數(shù)據(jù)和查詢相關(guān)信息以及提交意見和發(fā)表帖子。登陸身份驗(yàn)證查詢住戶信息查看通知信息發(fā)表意見論壇發(fā)帖失敗查看外來人員信息2.3 需求分析綜合系統(tǒng)目標(biāo)要實(shí)現(xiàn)的功能,本系統(tǒng)需要針對(duì)不同用戶級(jí)別(普通用戶和管理員)在各個(gè)功能模塊實(shí)現(xiàn)不同功能。1、小區(qū)住戶和外來人員的信息注冊(cè)更新模塊。如數(shù)據(jù)流圖 2-2:查詢方式人員信息 P1 信息注冊(cè)和處理處理信息存儲(chǔ)表P2 查詢?nèi)藛T信息情況普通用戶管理員圖 2-2 注冊(cè)更新模塊數(shù)據(jù)流圖管理員將數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)表中(P1 操作) ,小區(qū)住戶的個(gè)人信息是放在jumin 表中,外來人員的進(jìn)入進(jìn)出信息放在 wailairenyuan 表中,其中管理員(P1 信息注冊(cè)和處理處理)對(duì)小區(qū)住戶和外來人員信息的處理權(quán)限包括:查詢、插入、刪除和更新。普通只是能夠查看信息。2、帳號(hào)管理管理模塊。如數(shù)據(jù)流圖 2-3:管理員用戶 IDP1 刪除注冊(cè)用戶注冊(cè)帳號(hào)表普通用戶注冊(cè)信息P2 帳號(hào)修改圖 2-3 帳號(hào)模塊數(shù)據(jù)流圖帳號(hào)管理模塊也分為普通用戶和管理員兩種用戶級(jí)別,普通用戶的資料是放在 yonghu 表中,其中普通用戶進(jìn)入后,能夠看到自己的注冊(cè)內(nèi)容,可以對(duì)內(nèi)容進(jìn)行更新修改, 管理員可以進(jìn)行 p2 操作,具體權(quán)限是可以查看所有用戶的登陸帳號(hào),可以刪除用戶帳號(hào)。3 、公告欄模塊。如數(shù)據(jù)流圖 2-4:查詢公告信息管理員P1 發(fā)布公告表普通用戶P2 查看圖 2-4 公告欄模塊數(shù)據(jù)流圖管理員可以在公告欄模塊發(fā)布通知,(例如失物招領(lǐng)通知 )并且可以對(duì)發(fā)布的信息具有刪除權(quán)限,普通用戶在公告欄模塊可以查看后勤公司的通知(如水電費(fèi)方面的通知。4、意見反饋模塊。如數(shù)據(jù)流圖 2-5圖 2-5 意見反饋模塊數(shù)據(jù)流圖普通用戶可以通過提意見(p2 操作)將意見放在 yijian 表中,還可以查看自己提交的所有意見(p.3.1 操作),僅看到自己一個(gè)人的意見,對(duì)于管理員的回復(fù),可以通過查看 huifu 表實(shí)現(xiàn)(p.3.2 操作) ;管理員的權(quán)限可以查看所有用戶提交的意見,并且可以回復(fù)和刪除意見。5凡是注冊(cè)的用戶,都可以在論壇發(fā)帖和回復(fù)帖子。論壇的具體功能同意見反饋功能模塊相同。只是用戶級(jí)別沒有管理員。發(fā)帖和回復(fù)跟意見反饋的提意見和回復(fù)類似。3 社區(qū)管理系統(tǒng)總體設(shè)計(jì)3.1 系統(tǒng)體系結(jié)構(gòu)選擇社區(qū)管理系統(tǒng)采用的是 B/S(Browser/Server)體系結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。B/S 體系結(jié)構(gòu)是隨著 Internet 技術(shù)的興起,對(duì) C/S 結(jié)構(gòu)的一種變化或答復(fù)管理員P1.1 查看意見意見表意見 idP1.2回復(fù)回復(fù)表普通用戶意見P2 發(fā)表p.3.1 查看意見p.3.2 查看回復(fù)者改進(jìn)的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過 WWW 瀏覽器來實(shí)現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實(shí)現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實(shí)現(xiàn),形成所謂三層 3-tier 結(jié)構(gòu)。這樣就大大簡(jiǎn)化了客戶端電腦載荷,減輕了系統(tǒng)維護(hù)與升級(jí)的成本和工作量,降低了用戶的總體成本(TCO) 。以目前的技術(shù)看,局域網(wǎng)建立 B/S 結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過Internet/Intranet 模式下數(shù)據(jù)庫(kù)應(yīng)用,相對(duì)易于把握、成本也是較低的。它是一次性到位的開發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如 LAN, WAN, Internet/Intranet 等)訪問和操作共同的數(shù)據(jù)庫(kù);它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問權(quán)限,服務(wù)器數(shù)據(jù)庫(kù)也很安全 。3.2 系統(tǒng)功能模塊設(shè)計(jì)從系統(tǒng)目標(biāo)的內(nèi)容可以看出,系統(tǒng)共有五大功能模塊。用戶級(jí)別分為普通用戶和管理員用戶。1、注冊(cè)和帳戶管理模塊2、居民信息和外來人員信息查看和統(tǒng)計(jì)模塊3、公告欄模塊4、意見反饋模塊5、論壇交流模塊。注冊(cè)和帳戶管理模塊、居民信息和外來人員信息查看和統(tǒng)計(jì)模塊幾個(gè)功能模塊的算法都差不多。主要步驟有 2 步:1、在表單頁(yè)面提示用戶輸入數(shù)據(jù);2、 在處理頁(yè)面獲取用戶的輸入數(shù)據(jù),按照用戶的要求對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作意見反饋和公告欄模塊主要在上面的兩步前加了一步身份驗(yàn)證,主要是根據(jù)不同級(jí)別的用戶確定不同的顯示頁(yè)面。例如意見反饋中查看意見頁(yè)面實(shí)現(xiàn)步驟是:先從意見的存儲(chǔ)表中查找出來顯示,再?gòu)幕貜?fù)意見表中查找出回復(fù)的內(nèi)容把它顯示出來論壇模塊的只能是普通用戶。步驟同意見反饋差不多。3.3 功能模塊圖和說明社區(qū)管理系統(tǒng)用戶登陸普通用戶管理員注冊(cè)和賬戶管理居民和外來人員公告欄意見反饋交流論壇注冊(cè)和管理帳號(hào)居民和外來人員公告欄意見反饋圖 3-1 功能模塊圖從功能模塊圖中可以看出系統(tǒng)的中的各部分功能都是在管理員和普通用戶權(quán)限下完成操作管理員和普通用戶的具體操作權(quán)限如下兩點(diǎn):普通用戶:1、注冊(cè)和管理帳號(hào):可以注冊(cè)帳號(hào),并且在帳號(hào)管理里可以查看和更改自己的信息。2、居民和外來人員:可以查看人員的相關(guān)信息。3、公告欄:可以查看管理員所發(fā)布的信息。4、意見反饋:可以發(fā)表意見,并且可以查看自己所有發(fā)表的意見和管理員對(duì)他的回復(fù)。5、交流論壇:可以發(fā)表帖子,查看和回復(fù)別人的帖子。管理員:1、注冊(cè)和管理帳號(hào):可以查看和刪除普通用戶的帳號(hào),管理員自己的帳號(hào)則是在后臺(tái)數(shù)據(jù)庫(kù)里寫的,不可以在網(wǎng)頁(yè)里隨意注冊(cè)和更新。2、居民和外來人員:可以對(duì)居民和外來人員信息進(jìn)行操作,包括:注冊(cè),插入,更新和刪除。3、公告欄:可以查看和發(fā)布信息。4、意見反饋:可以查看所有用戶發(fā)表的意見并對(duì)其回復(fù)。4 社區(qū)管理系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)與邏輯實(shí)現(xiàn)4.1 數(shù)據(jù)庫(kù)選擇和簡(jiǎn)介數(shù)據(jù)庫(kù)技術(shù)在計(jì)算機(jī)軟件研究領(lǐng)域中一直是非常重要的主題。隨著 World Wide Web(WWW)和 Internet 技術(shù)的迅速發(fā)展,使得數(shù)據(jù)庫(kù)技術(shù)成為最熱門技術(shù)之一。Microsoft SQL server 2000 是目前使用最為廣泛的數(shù)據(jù)庫(kù),它與 Windows網(wǎng)絡(luò)操作系統(tǒng)的無縫繼成,智能化的內(nèi)容管理,強(qiáng)大的功能,使它得到大量用戶的喜愛。DBS 功能:1、 DBMS 提供數(shù)據(jù)定義語言(Data Definition Language,DDL),用戶通過它可以方便地對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)對(duì)象進(jìn)行定義。2、 DBMS 提供數(shù)據(jù)操縱語言(Data Manipulation Language, DML),用戶可以使用 DML 操縱數(shù)據(jù)實(shí)現(xiàn)對(duì)數(shù)據(jù)的基本操作如查詢、插入、刪除和修改。數(shù)據(jù)庫(kù)在建立、運(yùn)用和維護(hù)時(shí)由數(shù)據(jù)庫(kù)管理系統(tǒng)統(tǒng)一管理、統(tǒng)一控制,以保證數(shù)據(jù)的安全性、完整性、多用戶對(duì)數(shù)據(jù)的開發(fā)使用以及發(fā)生故障后的系統(tǒng)恢復(fù)。數(shù)據(jù)庫(kù)的建立和維護(hù)功能 。它包括數(shù)據(jù)庫(kù)初始數(shù)據(jù)的輸入、轉(zhuǎn)換功能,數(shù)據(jù)庫(kù)的轉(zhuǎn)儲(chǔ)、恢復(fù)功能,數(shù)據(jù)庫(kù)的重組織、重構(gòu)造功能和性能分析、監(jiān)視功能等等.這些功能常常由一些使用程序完成的。由于 SQL 在安全上,使用簡(jiǎn)潔性上具有很大的優(yōu)勢(shì),所以在數(shù)據(jù)庫(kù)的選擇上,我選擇了 SQL 數(shù)據(jù)庫(kù)作為后臺(tái)數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)的名稱是 jiang。4.2 社區(qū)服務(wù)與管理系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)4.2.1 數(shù)據(jù)庫(kù)的表結(jié)構(gòu)設(shè)計(jì)社區(qū)服務(wù)與管理系統(tǒng)共有 10 個(gè)表每個(gè)表的基本結(jié)構(gòu)和功能如下。1、yonghu 表:普通用戶的注冊(cè)表用于登記注冊(cè)用戶的注冊(cè)信息。結(jié)構(gòu)如表 4-1:表 4-1:用戶信息表2、guanliyuan 表:用于登記管理員的帳號(hào)信息。結(jié)構(gòu)如表 4-2:字段名 字段類型 長(zhǎng)度 是否允許為空username varchar 10 否pwd varchar 16 否sex varchar 2 是QQ int 10 是email varchar 50 是time datetime 8 是表 4-2:管理員信息表字段名 字段類型 長(zhǎng)度 是否允許為空id varchar 10 否password varchar 16 否3、jumin 表:主要對(duì)社區(qū)居民信息(姓名,身份證號(hào),居住單元,電話號(hào)碼)進(jìn)行統(tǒng)計(jì)。結(jié)構(gòu)如表 4-3:表 4-3:居民信息表字段名 字段類型 長(zhǎng)度 是否允許為空name varchar 10 否id varchar 10 否juzhudanyuan varchar 10 否telephone varchar 15 否Id 就是居住人員的身份證號(hào),因此 id 就是主鍵。4、wailairenyuan 表:統(tǒng)計(jì)外來人員進(jìn)入進(jìn)出時(shí)間和所帶物品,主鍵是 id。結(jié)構(gòu)如表 4-4:表 4-4:外來人員信息表字段名 字段類型 長(zhǎng)度 是否允許為空name varchar 10 否Id varchar 10 否dairuwupin varchar 20 否jtime datetime 8 否daichuwupin varchar 29 否ctime datetime 8 否5、xinxi 表:用于公告欄信息發(fā)布,id 是主鍵。結(jié)構(gòu)如表 4-5:表 4-5:公告信息表字段名 字段類型 長(zhǎng)度 是否允許為空Id int 4 否Zhuti varchar 20 是Zuozhe varchar 10 是Neirong varchar 100 否time datetime 8 是6、 yijian 表:記錄用戶提交的意見,id 是主鍵。結(jié)構(gòu)如表 4-6:表 4-6:意見表字段名 字段類型 長(zhǎng)度 是否允許為空Id int 4 否Zhuti varchar 20 是Zuozhe varchar 10 是Neirong varchar 100 否time datetime 8 是7、 yijianhuifu 表:記錄管理員對(duì)用戶意見的回復(fù),rid 字段是用來記錄回復(fù)的哪個(gè)意見的,id 是主鍵,結(jié)構(gòu)如表 4-7:表 4-7:意見反饋表字段名 字段類型 長(zhǎng)度 是否允許為空id int 4 否rid int 4 否rzhuti varchar 29 是rzuozhe varchar 10 是rneirong varchar 100 否time datetime 8 是另外論壇還有三個(gè)表:版塊表, 帖子表和回復(fù)表。board 表:用來記錄論壇版塊的。結(jié)構(gòu)如表 4-8:表 4-8:版塊表字段名 字段類型 長(zhǎng)度 是否允許為空id int 6 否boardname varchar 10 是banzhu varchar 10 是boardcontent varchar 20 是wenzhang 表:用來記錄論壇帖子。結(jié)構(gòu)如表 4-9:表 4-9:帖子表字段名 字段類型 長(zhǎng)度 是否允許為空id int 4 否title varchar 20 是content varchar 100 否name varchar 20 是time varchar 8 是boardid int 4 是hits int 4 是ip varchar 20 是rwenzhang 表:記錄用戶對(duì)論壇帖子回復(fù)的文章。主鍵是 id 結(jié)構(gòu)如 4-10:表 4-10:回復(fù)表字段名 字段類型 長(zhǎng)度 是否允許為空id int 4 否rid int 4 否rname varchar 20 是rcontent varchar 100 否rtime datetime 8 是rip varchar 20 是4.2.2 數(shù)據(jù)庫(kù)的連接1、設(shè)置數(shù)據(jù)庫(kù)的身份驗(yàn)證模式,步驟為,打開 sql 企業(yè)管理器右鍵單擊控制臺(tái)選擇屬性單擊安全性選擇 sql 身份驗(yàn)證;另外還要新建一個(gè)登陸用戶,我這兒直接用的系統(tǒng)帳號(hào) sa。2、設(shè)置數(shù)據(jù)源:打開控制面板選擇管理工具打開選擇數(shù)據(jù)源選擇系統(tǒng) dsn點(diǎn)擊添加選擇 server sql設(shè)置數(shù)據(jù)源名(我輸入的是 jiang)和設(shè)置服務(wù)器為(local) 在下一步中選擇使用用戶輸入登陸 ID 和密碼的 SQL身份驗(yàn)證在下面輸入登陸 ID 和密碼在下一步中選擇更改默認(rèn)數(shù)據(jù)庫(kù),選擇你要連接的數(shù)據(jù)庫(kù)(我選擇的是 jiang)最后單擊完成。你可以單擊測(cè)試,如果顯示測(cè)試成功,表明你已經(jīng)建好了數(shù)據(jù)源否則,表示你在建數(shù)據(jù)源的過程中設(shè)置錯(cuò)了值。3、最后一步則是在程序中編寫連接代碼,具體代碼如下:4.3 數(shù)據(jù)庫(kù)關(guān)系圖本系統(tǒng)只有一個(gè)關(guān)系圖 DIAGRAM1 主要是防止普通用戶的用戶名的更改,而造成 yijian 表和 wenzhang 表里的作者項(xiàng)與 yonghu 表里的作者名稱不符和。如圖 4-1:圖 4-1 數(shù)據(jù)庫(kù)關(guān)系圖其中用戶表的 usernam 是主鍵,而 yijian 表里的做 zuozhe 和 wenzhang 表里的 name 是外鍵。5 社區(qū)管理系統(tǒng)的實(shí)現(xiàn)5.1 社區(qū)管理系統(tǒng)注冊(cè)和帳號(hào)管理模塊注冊(cè)界面如圖 5-1:圖 5-1 系統(tǒng)注冊(cè)界面在注冊(cè)界面中,QQ 選項(xiàng)必須輸入數(shù)字,其他的由于在數(shù)據(jù)庫(kù)中的字段屬性設(shè)置的字符類型,所以可以任意輸入數(shù)據(jù)。注冊(cè)的基本代碼如下:alert('請(qǐng)?zhí)顚懲暾?#39;);history.back(-1);“response.End()elseuser=request.form(“user“)pwd=request.form(“pwd“)sex=request.form(“sex“)QQ=request.form(“QQ“)email=request.form(“email“)dim rsdim sqlset rs=server.createobject(“adodb.recordset“)sql=“select*from yonghu where username='“history.back(-1);“%您已經(jīng)注冊(cè)成功“response.End()%帳號(hào)管理就分為普通用戶和管理員兩個(gè)不同頁(yè)面,實(shí)現(xiàn)方式是根據(jù)不同用戶登陸產(chǎn)生的不同 session 變量來確定,代碼如下:empty then response.Redirect(“mzhanghao.asp“)elseresponse.Redirect(“uzhanghao.asp“)end if%普通用戶則導(dǎo)向 uzhanghao.asp 管理員則導(dǎo)向 mzhanghao.asp。在普通用戶頁(yè)面中,你可以更改自己的注冊(cè)資料如圖 5-2:圖 5-2 用戶信息更改界面代碼如下:管理員則可以查看和刪除注冊(cè)用戶的資料,如圖 5-3:圖 5-3 管理用戶資料界面管理員通過單擊“刪除”來刪除普通用戶的注冊(cè)名,這里主要是通過超鏈接傳遞一個(gè)參數(shù)(yonghu 表里的 id,數(shù)據(jù)庫(kù)系統(tǒng)自動(dòng)生成)到刪除處理程序,通過查找符合參數(shù)的記錄,最后再刪除這條記錄。5.2 查看居住人員和外來人員信息模塊查看居住人員和外來人員信息模塊,我們首先要在依據(jù)你輸入的身份證號(hào)碼來確定查詢哪個(gè)人如圖 5-4:圖 5-4 查詢?nèi)藛T信息界面例如輸入一個(gè) 11(當(dāng)然實(shí)際不可能有這種格式的身份證號(hào)碼,這里只是為了演示方便)就會(huì)在顯示頁(yè)面看到住戶的姓名、身份證號(hào)碼、居住單元和電話號(hào)碼。如圖 5-5:圖 5-5 人員信息顯示界面而查看外來人員信息同查看居住人員信息一樣,這里就不再敘述了。而管理員的權(quán)限更高,有查詢、刪除、插入和更新。代碼跟普通用戶的查詢的代碼差不多,只是 SQL 語句的不同而已5.3 查看公告信息模塊查看公告信息的實(shí)現(xiàn)代碼基本上同查看住戶的代碼相同,唯一不同的是加入了分頁(yè)顯示,如圖 5-6:圖 5-6 公告信息顯示界面其中普通用戶只能查看,而管理員則可以刪除和發(fā)布。這里刪除同帳號(hào)管理里的刪除有所不同。帳號(hào)管理里的刪除是通過表單傳遞一個(gè)身份證號(hào)碼來確定刪除誰,這里是通過超鏈接里傳遞一個(gè)參數(shù)給刪除頁(yè)面,然后刪除。代碼如下:“刪除發(fā)布基本上同注冊(cè)差不多。另外,分頁(yè)顯示顯示的實(shí)現(xiàn)代碼如下:第一頁(yè)1 Then %“上一頁(yè)“下一其主要實(shí)現(xiàn)步驟有 2 步:1、首先超鏈接到本頁(yè),傳回一個(gè)參數(shù) a,第一頁(yè)就傳遞 a=1,下一頁(yè)傳遞a=a-1,上一頁(yè)傳遞 a=a+1;2、 在程序起始部分獲取 a 值,代碼是 a=cint(request.querystring(“a“),然后設(shè)置顯示第幾頁(yè),代碼是 rs.absolutepage=a,意思是將顯示頁(yè)面設(shè)置成第 a 頁(yè),absolutepage 是分頁(yè)顯示的一個(gè)屬性,指當(dāng)前顯示第幾頁(yè)。5.4 意見反饋模塊意見反饋模塊有普通用戶提交意見和管理員回復(fù)意見的功能,普通用戶提交意見實(shí)現(xiàn)代碼同公告欄管理員發(fā)布差不多。管理員回復(fù)意見只是對(duì)每個(gè)意見進(jìn)行回復(fù),程序中將回復(fù)意見表的字段 rid 與意見表 id 字段相同,以便使其相關(guān)聯(lián)。另外,普通用戶同管理員查看意見的實(shí)現(xiàn)代碼的特點(diǎn)是,它不像帳號(hào)管理模塊那樣根據(jù)不同用戶的登陸而導(dǎo)向不同的頁(yè)面,而是管理員和普通用戶是一個(gè)頁(yè)面,只是根據(jù)不同用戶而執(zhí)行,不同的程序段,意見查看代碼如下:session(“name“)是管理員登陸是產(chǎn)生的客戶端變量,程序的意思是管理員和普通用戶到意見查看頁(yè)面查看意見時(shí),定義不同的 sql 查詢語句。這樣,由于 SQL 語句的不同,rs 記錄集中的內(nèi)容便會(huì)不同。在顯示意見時(shí),普通用戶和管理員就看到了不同內(nèi)容的頁(yè)面。5.5 論壇模塊論壇模塊重點(diǎn)主要是 show 頁(yè)面的實(shí)現(xiàn)如圖 5-7:圖 5-7 論壇帖子顯示界面通過截圖,可以看到 show 的重點(diǎn)將帖子和回復(fù)的帖子顯示在一起,這里實(shí)現(xiàn)的方式,主要是將帖子和回復(fù)的帖子分別存在 wenzhang 和 rwenzhang 表中,其中 wenzhang 表有一個(gè)字段 id 對(duì)應(yīng) rwenzhang 表中的字段 rid。這樣,就可以先顯示 wenzhang 里的帖子,然后再顯示 rwenzhang 里 rid 字段與顯示的帖子的id 字段相同的回復(fù)帖子就可以了。具體代碼如下:第一行就是獲取原帖的 id 號(hào),然后定義 SQL 語句 sql = “select*from rwenzhang where bid=0 and rid=“response.write“javascript:history.go(-1)“elsesession(“user“)=unameresponse.Redirect “index.asp“end if elseset rs=server.createobject(“adodb.recordset“)sql=“select * from guanliyuan where id='“response.write“javascript:history.go(-1)“elsesession(“name“)=uname response.Redirect “index.asp“end ifend if %2.在需要用戶先登陸的頁(yè)面加入以下代碼:意思是如果用戶沒有以任何一種身份登陸的話,那就不能訪問這個(gè)頁(yè)面。6.2 查看意見根據(jù)不同級(jí)別用戶的顯示模式這里主要通過兩種方法實(shí)現(xiàn):一種是通過不同的 session 變量導(dǎo)向不同的頁(yè)面,第二種是,在程序中加條件控制。結(jié) 論本文簡(jiǎn)要介紹了一個(gè)具有典型 B/S 體系結(jié)構(gòu)的網(wǎng)絡(luò)社區(qū)服務(wù)與管理系統(tǒng),重點(diǎn)討論了系統(tǒng)開發(fā)工具、開發(fā)語言等關(guān)鍵技術(shù)以及系統(tǒng)的數(shù)據(jù)庫(kù)建設(shè),系統(tǒng)流程圖和功能模塊圖以及代碼分析。這些過程的討論和分析,讓大家對(duì)系統(tǒng)的體系結(jié)構(gòu),功能模塊等有了更深的了解。目前此系統(tǒng)基本可以完全實(shí)現(xiàn)初期預(yù)定的功能,但系統(tǒng)仍然有一些不盡人意,而這些問題主要集中在系統(tǒng)的安全上,雖然系統(tǒng)已經(jīng)通過相關(guān)的控制語句對(duì)登陸用戶身份進(jìn)行驗(yàn)證,但是在當(dāng)今網(wǎng)絡(luò)信息安全中,僅僅對(duì)用戶身份驗(yàn)證是不夠的,還需要對(duì)傳送數(shù)據(jù)進(jìn)行加密,防止數(shù)據(jù)傳輸過程中被篡改等攻擊進(jìn)行防御。因此在今后的工作里,這些功能的實(shí)現(xiàn)還需要更高的技術(shù)支持。在日常維護(hù)過程中,都需要進(jìn)行嚴(yán)格的檢測(cè),以保證系統(tǒng)的服務(wù)質(zhì)量。參考文獻(xiàn)1 溫明等.ASP 網(wǎng)站建設(shè)實(shí)錄M. 北京:紅旗出版社,2005。2 王珊等.數(shù)據(jù)庫(kù)基礎(chǔ)與應(yīng)用M. 北京:人民郵電出版社,2003。3 金林樵.網(wǎng)絡(luò)數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用M. 北京:機(jī)械工業(yè)出版社,2002。4 鄧文淵.ASP 與網(wǎng)絡(luò)數(shù)據(jù)庫(kù)技術(shù)M. 北京:中國(guó)鐵道出版社,2004。5 楊得新等.SQL SEVER 數(shù)據(jù)庫(kù)系統(tǒng)M. 北京:機(jī)械工業(yè)出版社,2004。6 郭瑞軍等.ASP 數(shù)據(jù)庫(kù)開發(fā)示例精粹M. 北京:電子工業(yè)出版社,2005。7 方睿 ,刁仁宏, 吳四九網(wǎng)絡(luò)數(shù)據(jù)庫(kù)原理及應(yīng)用M. 成都:四川大學(xué)出版社,2005。致 謝本文是在唐老師的熱情關(guān)心和指導(dǎo)下完成的,他淵博的知識(shí)和嚴(yán)謹(jǐn)?shù)闹螌W(xué)作風(fēng)使我受益匪淺,對(duì)順利完成本課題起到了極大的作用。在此向他表示我最衷心的感謝!在論文完成過程中,本人還得到了其他老師和許多同學(xué)的熱心幫助,本人向他們表示深深的謝意!最后向在百忙之中評(píng)審本文的各位專家、老師表示衷心的感謝!