畢業(yè)設(shè)計---網(wǎng)絡(luò)社區(qū)服務(wù)與管理系統(tǒng)的設(shè)計與實現(xiàn)_第1頁
已閱讀1頁,還剩26頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  網(wǎng)絡(luò)社區(qū)服務(wù)與管理系統(tǒng)的設(shè)計與實現(xiàn)</p><p>  網(wǎng)絡(luò)社區(qū)服務(wù)與管理系統(tǒng)的設(shè)計與實現(xiàn)</p><p><b>  摘 要</b></p><p>  社區(qū)服務(wù)與管理系統(tǒng)是利用計算機技術(shù)來管理社區(qū)的居民信息,其主要意義在于避免傳統(tǒng)手寫方式產(chǎn)生的數(shù)據(jù)丟失、書寫錯誤、勞動強度高且時間和空間上限制的等問題。通過計算機聯(lián)網(wǎng)后

2、,可以實現(xiàn)數(shù)據(jù)的遠程訪問和共享,從而方便管理并節(jié)約成本。</p><p>  本文介紹了一個社區(qū)服務(wù)與管理系統(tǒng)的設(shè)計與實現(xiàn)。該系統(tǒng)完整地分析了社區(qū)服務(wù)與管理系統(tǒng)的業(yè)務(wù)需求,并進行了詳細設(shè)計。在此基礎(chǔ)上實現(xiàn)了其中的基本功能,包括:居民信息管理、外來人員信息管理、信息公告、用戶注冊、用戶論壇等功能。同時,系統(tǒng)對用戶進行了分級管理,提高了系統(tǒng)的安全性。</p><p>  在技術(shù)上,該系統(tǒng)選擇了

3、三層的網(wǎng)絡(luò)體系結(jié)構(gòu)??蛻舳思夹g(shù)綜合采用HTML、VBScript、JavaScript等技術(shù)提供用戶界面;應(yīng)用服務(wù)器端使用IIS,并采用ASP動態(tài)網(wǎng)頁編程技術(shù)實現(xiàn)業(yè)務(wù)邏輯;數(shù)據(jù)庫服務(wù)器采用SQL Server 2000關(guān)系數(shù)據(jù)庫。應(yīng)用服務(wù)器利用ADO技術(shù)與數(shù)據(jù)庫服務(wù)器進行透明的數(shù)據(jù)傳輸。</p><p>  關(guān)鍵字:社區(qū)管理系統(tǒng);數(shù)據(jù)庫;論壇;ASP</p><p>  The Desig

4、n and Realization of Community Service and Management System Network</p><p><b>  Abstract</b></p><p>  Community Service and Management System (CSMS) is such a software system that m

5、anages the information of the community resident by using computer technology. Comparing with the traditional way of handwritten, it has significant advantages such as avoiding the data loss, limiting the writing errors,

6、 reducing the labor intensity and breaking the space restriction. Through the computer network, remote data accessing and data sharing can be implemented to facilitate the management and to save the co</p><p&g

7、t;  This paper introduces the designation and implementation of a concrete Community Service and Management System. This system completely analyzed the business requirements and system requirements of the CSMS, and desig

8、ned the system in detail. Based on this, it implemented the basic functionalities of the CSMS, including resident information management, immigrant information management, information broadcasting, and user registration

9、and user forum. Meanwhile, the system grades the users to enhanc</p><p>  Technically, the system adopted the Tri-Level network architecture. The client uses HTML, VBScript, JAVA Script technologies to provi

10、de the user interface; the application server uses IIS, ASP dynamic web programming technology to achieve the business logic; the database server chooses the SQL Server 2000 relational DBMS; the application server commun

11、icates with database transparently by ADO technology.</p><p>  Key words: community management systems; databases; forums; ASP</p><p><b>  目 錄</b></p><p><b>  論文總

12、頁數(shù):24頁</b></p><p><b>  1引言1</b></p><p>  1.1目前背景和國內(nèi)外現(xiàn)狀1</p><p>  1.2系統(tǒng)的主要設(shè)計方法1</p><p>  1.3系統(tǒng)開發(fā)條件1</p><p>  2社區(qū)管理系統(tǒng)分析1</p>

13、;<p>  2.1系統(tǒng)目標1</p><p>  2.2可行性分析2</p><p>  2.2.1技術(shù)可行性2</p><p>  2.2.2經(jīng)濟可行性3</p><p>  2.2.3營運可行性分析3</p><p>  2.3需求分析5</p><p&g

14、t;  3社區(qū)管理系統(tǒng)總體設(shè)計6</p><p>  3.1系統(tǒng)體系結(jié)構(gòu)選擇6</p><p>  3.2系統(tǒng)功能模塊設(shè)計7</p><p>  3.3功能模塊圖和說明8</p><p>  4社區(qū)管理系統(tǒng)的數(shù)據(jù)庫設(shè)計與邏輯實現(xiàn)9</p><p>  4.1數(shù)據(jù)庫選擇和簡介9</p>

15、<p>  4.2社區(qū)服務(wù)與管理系統(tǒng)的數(shù)據(jù)庫設(shè)計9</p><p>  4.2.1數(shù)據(jù)庫的表結(jié)構(gòu)設(shè)計9</p><p>  4.2.2數(shù)據(jù)庫的連接11</p><p>  4.3數(shù)據(jù)庫關(guān)系圖12</p><p>  5社區(qū)管理系統(tǒng)的實現(xiàn)12</p><p>  5.1社區(qū)管理系統(tǒng)注冊

16、和帳號管理模塊12</p><p>  5.2查看居住人員和外來人員信息模塊16</p><p>  5.3查看公告信息模塊16</p><p>  5.4意見反饋模塊18</p><p>  5.5論壇模塊18</p><p>  6難點及解決方法20</p><p> 

17、 6.1用戶登錄判斷20</p><p>  6.2查看意見根據(jù)不同級別用戶的顯示模式21</p><p><b>  結(jié) 論21</b></p><p><b>  參考文獻21</b></p><p><b>  致 謝23</b></p&g

18、t;<p><b>  聲 明24</b></p><p><b>  引言</b></p><p>  目前背景和國內(nèi)外現(xiàn)狀</p><p>  隨著信息技術(shù)的飛速發(fā)展,特別是網(wǎng)絡(luò)和數(shù)據(jù)庫技術(shù)的發(fā)展,計算機已經(jīng)成為當今處理信息的主要工具。數(shù)據(jù)庫技術(shù)是計算機應(yīng)用技術(shù)中的一個重要組成部分,對于大量的數(shù)據(jù)

19、,使用數(shù)據(jù)庫來存儲管理將比通過文件來存儲管理更高效。數(shù)據(jù)庫技術(shù)在經(jīng)過幾代變革以后,出現(xiàn)了以關(guān)系數(shù)據(jù)庫產(chǎn)品為主流的數(shù)據(jù)庫時代。人們對于現(xiàn)實中的各種事物的管理已經(jīng)越來越依靠計算機進行智能化管理,而不是靠手工輸入進行統(tǒng)計管理。</p><p>  其次,當代社會,隨著社會、科技、文化和經(jīng)濟的發(fā)展,特別是計算機網(wǎng)絡(luò)技術(shù)和通信技術(shù)的大發(fā) 展,人們在隨時隨地,都可以知道遠在千里的信息。但是,現(xiàn)在許多居民小區(qū)的信息并沒有在網(wǎng)上

20、公布,如果,遠在千里之外的人要了解這個居民小區(qū)的情況,則很困難。因此,在這種狀況下,提供一種網(wǎng)絡(luò)社區(qū)服務(wù)與管理系統(tǒng)對一個社區(qū)進行管理,使任何人在任何時候任何地點,都可以了解到小區(qū)的信息,并且使人們可以在這個平臺上進行交流是勢在必行。</p><p>  目前,在發(fā)達國家,對居民小區(qū)基本上是用軟件進行統(tǒng)計管理,而在國內(nèi),除了在較發(fā)達的地區(qū)是用了電腦,在大多數(shù)的地方,基本上是用人工對人員信息進行統(tǒng)計。導(dǎo)致這種狀況的原

21、因除了許多人不懂電腦,硬件設(shè)備不到位的原因外,最主要的原因是國內(nèi)從事這方面研究的人員太少。因此,在目前這種情況下,率先進行研究,是極具商業(yè)價值的。</p><p><b>  系統(tǒng)的主要設(shè)計方法</b></p><p>  系統(tǒng)采用的是B/S模式開發(fā),界面簡單實用,沒有冗余頁面。此系統(tǒng)既可以在網(wǎng)站上用,也可以在局域網(wǎng)上使用。</p><p> 

22、 本系統(tǒng)用的是ASP+VBScript +SQL 和少量的語句就用vbscript來開發(fā),采用的服務(wù)器是IIS。系統(tǒng)有非常簡潔的界面,給用戶帶來了方便。這樣用戶就可以更加方便的人性化的交流。</p><p><b>  系統(tǒng)開發(fā)條件</b></p><p>  系統(tǒng)開發(fā)費用教少,只是需要開發(fā)人員一名,而系統(tǒng)完成后,在全國許多地方都可以用來作為小區(qū)的管理軟件。投入少,收

23、益大。</p><p><b>  社區(qū)管理系統(tǒng)分析</b></p><p><b>  系統(tǒng)目標</b></p><p>  以先進的計算機管理手段和網(wǎng)絡(luò)技術(shù)設(shè)計一個網(wǎng)絡(luò)社區(qū)服務(wù)與管理系統(tǒng)管理系統(tǒng),為需要了解社區(qū)情況的人員提供信息查詢和交流等網(wǎng)絡(luò)在線服務(wù)。通過本系統(tǒng)的運用能夠達到人力與費用的節(jié)省、處理速度的提高、管理信息

24、服務(wù)的改進、人員工作效率的提高 。</p><p><b>  可行性分析</b></p><p>  在明確系統(tǒng)目標和環(huán)境的基礎(chǔ)上,需要進一步對系統(tǒng)的可行性進行研究。此活動的主要目標是進一步明確系統(tǒng)的目標、規(guī)模與功能,對系統(tǒng)開發(fā)背景、必要性和意義進行調(diào)查分析并根據(jù)需要和可能提出擬開發(fā)系統(tǒng)的初步方案與計劃??尚行匝芯渴轻槍ο到y(tǒng)進行全面、概要的分析,主要包括三方面:技術(shù)

25、可行性分析、經(jīng)濟可行性分析和營運可行性分析。</p><p><b>  技術(shù)可行性</b></p><p>  從用戶應(yīng)用角度來看,可把應(yīng)用程序系統(tǒng)的組成部分分成數(shù)據(jù)存儲層(DAO)、業(yè)務(wù)處理層(SERVICE)和界面表示層(WEB)3個層次,而應(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)、客戶機/

26、服務(wù)器應(yīng)用程序結(jié)構(gòu)等5種類型。</p><p>  本系統(tǒng)就采用是瀏覽器/服務(wù)器應(yīng)用程序結(jié)構(gòu)(即B/S結(jié)構(gòu))。此時,瀏覽器發(fā)出請求(request),服務(wù)器對瀏覽器的請求做出回應(yīng)(response)。通過對服務(wù)功能的分布實現(xiàn)了分工服務(wù)。這樣使整個系統(tǒng)具有較好的性能并且使瀏覽器端能夠快速的運行和顯示,而服務(wù)器可以并行地處理瀏覽器端發(fā)送的請求降低了瀏覽器的負荷。由于條件所限,將此系統(tǒng)的所有瀏覽器都置于一臺計算機上,以

27、便開發(fā)以及調(diào)試運行。</p><p>  系統(tǒng)開發(fā)語言是ASP使用數(shù)據(jù)庫是SQL Server 2000.與HTML相比較, ASP具有以下優(yōu)點:</p><p>  1、利用ASP可以實現(xiàn)突破靜態(tài)網(wǎng)頁的一些功能限制,實現(xiàn)動態(tài)網(wǎng)頁技術(shù); </p><p>  2 、ASP文件是包含在HTML代碼所組成的文件中的,易于修改和測試; </p><

28、p>  3、服務(wù)器上的ASP解釋程序會在服務(wù)器端制定ASP程序,并將結(jié)果以HTML格式傳送到客戶端瀏覽器上,因此使用各種瀏覽器都可以正常瀏覽ASP所產(chǎn)生的網(wǎng)頁; </p><p>  4、ASP提供了一些內(nèi)置對象,使用這些對象可以使服務(wù)器端腳本功能更強例如可以從web瀏覽器中獲取用戶通過HTML表單提交的信息,并在腳本中對這些信息進行處理,然后向web瀏覽器發(fā)送信息;</p><p>

29、;  5、ASP可以使用服務(wù)器端ActiveX組建來執(zhí)行各種各樣的任務(wù),例如存取數(shù)據(jù)庫、發(fā)現(xiàn)那個Email或訪問文件系統(tǒng)等;</p><p>  6、由于服務(wù)器是將ASP程序執(zhí)行的結(jié)果以HTML格式傳回客戶端瀏覽器,因此使用者不會看到ASP所編寫的原始程序代碼,可放置ASP程序代碼被竊</p><p>  由于asp的幾大內(nèi)置對象(response、request、session、appl

30、ication、server)具有向向瀏覽器端傳送數(shù)據(jù)、讀取瀏覽器端數(shù)據(jù)Server對象、記錄瀏覽器端變量和操作數(shù)據(jù)庫等功能,因此,asp能夠?qū)崿F(xiàn)系統(tǒng)的預(yù)定功能。</p><p>  本系統(tǒng)所使用開發(fā)軟件是Dreaweaver, Dreaweaver是Macromedia公司最新推出的主頁編輯工具。這是一個所見即所得主頁編輯器,并帶有站點管理功能,讓你方便地設(shè)計和管理多個站點,能夠大大地縮短程序人員的編程時間。&

31、lt;/p><p><b>  經(jīng)濟可行性</b></p><p>  主要是對主要是對項目的經(jīng)濟效益進行評價,一方面是支出的費用,其中包括設(shè)備購置費、軟件開發(fā)費、管理和維護費、人員工資和培訓(xùn)費等。另一方面是取得的收益中不可以用錢來衡量的那部分(收益的另一部分難以用錢來表示)。</p><p>  基于一般居民社區(qū)現(xiàn)有情況,要建設(shè)網(wǎng)絡(luò)社區(qū)服務(wù)與管理

32、系統(tǒng)需要適當添置硬件設(shè)備,如個人電腦一臺,由于該軟件是個小型軟件,不用承擔(dān)太高開發(fā)費用。而社區(qū)的管理人員完全有能力自己使用和維護該系統(tǒng)。建立一個社區(qū)管理系統(tǒng)后,能大大減少重復(fù)性的工作過程,降低工作時間,提高工作效率。使后勤管理可以把更多時間投入到更為重要的事情中。因此,與后期各方面的收益相比前期的投入值得的。</p><p>  另外,系統(tǒng)運行環(huán)境要求較低,具體如下:</p><p>  

33、(1)Internet瀏覽</p><p><b>  (2)內(nèi)存256兆</b></p><p>  (3)數(shù)據(jù)庫:SQL Server 2000</p><p>  (4)裝有windows xp系統(tǒng)的電腦一臺</p><p>  因此,開發(fā)本系統(tǒng)在經(jīng)濟上,效益是遠大于投入的,</p><p>

34、;<b>  營運可行性分析</b></p><p>  主要是管理人員對開發(fā)信息系統(tǒng)是否支持,系統(tǒng)應(yīng)該具有操作簡單、界面友好、易于理解,管理者經(jīng)過短時間的培訓(xùn)就可以較為熟練地使用該系統(tǒng)。用戶可以方便使用本系統(tǒng)的功能。</p><p>  基于以上幾點,本系統(tǒng)的基本能夠操作步驟,可參看系統(tǒng)的流程圖如</p><p><b>  圖2-

35、1:</b></p><p>  圖2-1 系統(tǒng)流程圖</p><p>  從圖中可以看出,本系統(tǒng)用戶級別有管理員和普通用戶兩種級別,用戶按不同的方式登陸后就會有不同的操作權(quán)限,管理員具有對各類用戶的更改權(quán)限,普通用戶可以更改自己的數(shù)據(jù)和查詢相關(guān)信息以及提交意見和發(fā)表帖子。</p><p><b>  需求分析</b></p&

36、gt;<p>  綜合系統(tǒng)目標要實現(xiàn)的功能,本系統(tǒng)需要針對不同用戶級別(普通用戶和管理員)在各個功能模塊實現(xiàn)不同功能。</p><p>  1、小區(qū)住戶和外來人員的信息注冊更新模塊。如數(shù)據(jù)流圖2-2:</p><p>  圖2-2 注冊更新模塊數(shù)據(jù)流圖</p><p>  管理員將數(shù)據(jù)存儲在數(shù)據(jù)表中(P1操作),小區(qū)住戶的個人信息是放在jumin表中,

37、外來人員的進入進出信息放在wailairenyuan表中,其中管理員(P1信息注冊和處理處理)對小區(qū)住戶和外來人員信息的處理權(quán)限包括:查詢、插入、刪除和更新。普通只是能夠查看信息。</p><p>  2、帳號管理管理模塊。如數(shù)據(jù)流圖2-3:</p><p>  圖2-3 帳號模塊數(shù)據(jù)流圖</p><p>  帳號管理模塊也分為普通用戶和管理員兩種用戶級別,普通用戶

38、的資料是放在yonghu表中,其中普通用戶進入后,能夠看到自己的注冊內(nèi)容,可以對內(nèi)容進行更新修改, 管理員可以進行p2操作,具體權(quán)限是可以查看所有用戶的登陸帳號,可以刪除用戶帳號。</p><p>  3 、公告欄模塊。如數(shù)據(jù)流圖2-4:</p><p>  圖2-4 公告欄模塊數(shù)據(jù)流圖</p><p>  管理員可以在公告欄模塊發(fā)布通知,(例如失物招領(lǐng)通知 )并且

39、可以對發(fā)布的信息具有刪除權(quán)限,普通用戶在公告欄模塊可以查看后勤公司的通知(如水電費方面的通知。</p><p>  4、意見反饋模塊。如數(shù)據(jù)流圖2-5</p><p>  圖2-5 意見反饋模塊數(shù)據(jù)流圖</p><p>  普通用戶可以通過提意見(p2操作)將意見放在yijian表中,還可以查看自己提交的所有意見(p.3.1操作),僅看到自己一個人的意見,對于管理員

40、的回復(fù),可以通過查看huifu表實現(xiàn)(p.3.2操作);管理員的權(quán)限可以查看所有用戶提交的意見,并且可以回復(fù)和刪除意見。</p><p>  5.凡是注冊的用戶,都可以在論壇發(fā)帖和回復(fù)帖子。論壇的具體功能同意見反饋功能模塊相同。只是用戶級別沒有管理員。發(fā)帖和回復(fù)跟意見反饋的提意見和回復(fù)類似。</p><p>  社區(qū)管理系統(tǒng)總體設(shè)計</p><p><b>

41、;  系統(tǒng)體系結(jié)構(gòu)選擇</b></p><p>  社區(qū)管理系統(tǒng)采用的是B/S(Browser/Server)體系結(jié)構(gòu)即瀏覽器和服務(wù)器結(jié)構(gòu)。B/S體系結(jié)構(gòu)是隨著Internet技術(shù)的興起,對C/S結(jié)構(gòu)的一種變化或者改進的結(jié)構(gòu)。在這種結(jié)構(gòu)下,用戶工作界面是通過WWW瀏覽器來實現(xiàn),極少部分事務(wù)邏輯在前端(Browser)實現(xiàn),但是主要事務(wù)邏輯在服務(wù)器端(Server)實現(xiàn),形成所謂三層3-tier結(jié)構(gòu)。這

42、樣就大大簡化了客戶端電腦載荷,減輕了系統(tǒng)維護與升級的成本和工作量,降低了用戶的總體成本(TCO)。以目前的技術(shù)看,局域網(wǎng)建立B/S結(jié)構(gòu)的網(wǎng)絡(luò)應(yīng)用,并通過Internet/Intranet模式下數(shù)據(jù)庫應(yīng)用,相對易于把握、成本也是較低的。它是一次性到位的開發(fā),能實現(xiàn)不同的人員,從不同的地點,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)訪問和操作共同的數(shù)據(jù)庫;它能有效地保護數(shù)據(jù)平臺和管理訪問權(quán)限,服務(wù)器數(shù)據(jù)

43、庫也很安全 。</p><p><b>  系統(tǒng)功能模塊設(shè)計</b></p><p>  從系統(tǒng)目標的內(nèi)容可以看出,系統(tǒng)共有五大功能模塊。用戶級別分為普通用戶和管理員用戶。</p><p>  1、注冊和帳戶管理模塊</p><p>  2、居民信息和外來人員信息查看和統(tǒng)計模塊</p><p>&

44、lt;b>  3、公告欄模塊</b></p><p><b>  4、意見反饋模塊</b></p><p><b>  5、論壇交流模塊。</b></p><p>  注冊和帳戶管理模塊、居民信息和外來人員信息查看和統(tǒng)計模塊幾個功能模塊的算法都差不多。主要步驟有2步:</p><p&g

45、t;  1、在表單頁面提示用戶輸入數(shù)據(jù);</p><p>  2、 在處理頁面獲取用戶的輸入數(shù)據(jù),按照用戶的要求對數(shù)據(jù)庫進行操作</p><p>  意見反饋和公告欄模塊主要在上面的兩步前加了一步身份驗證,主要是根據(jù)不同級別的用戶確定不同的顯示頁面。例如意見反饋中查看意見頁面實現(xiàn)步驟是:先從意見的存儲表中查找出來顯示,再從回復(fù)意見表中查找出回復(fù)的內(nèi)容把它顯示出來</p>&l

46、t;p>  論壇模塊的只能是普通用戶。步驟同意見反饋差不多。</p><p><b>  功能模塊圖和說明</b></p><p><b>  圖3-1功能模塊圖</b></p><p>  從功能模塊圖中可以看出系統(tǒng)的中的各部分功能都是在管理員和普通用戶權(quán)限下完成操作管理員和普通用戶的具體操作權(quán)限如下兩點:<

47、/p><p>  普通用戶:1、注冊和管理帳號:可以注冊帳號,并且在帳號管理里可以查看和更改自己的信息。2、居民和外來人員:可以查看人員的相關(guān)信息。3、公告欄:可以查看管理員所發(fā)布的信息。4、意見反饋:可以發(fā)表意見,并且可以查看自己所有發(fā)表的意見和管理員對他的回復(fù)。5、交流論壇:可以發(fā)表帖子,查看和回復(fù)別人的帖子。</p><p>  管理員:1、注冊和管理帳號:可以查看和刪除普通用戶的帳號,

48、管理員自己的帳號則是在后臺數(shù)據(jù)庫里寫的,不可以在網(wǎng)頁里隨意注冊和更新。2、居民和外來人員:可以對居民和外來人員信息進行操作,包括:注冊,插入,更新和刪除。3、公告欄:可以查看和發(fā)布信息。4、意見反饋:可以查看所有用戶發(fā)表的意見并對其回復(fù)。</p><p>  社區(qū)管理系統(tǒng)的數(shù)據(jù)庫設(shè)計與邏輯實現(xiàn)</p><p><b>  數(shù)據(jù)庫選擇和簡介</b></p>

49、<p>  數(shù)據(jù)庫技術(shù)在計算機軟件研究領(lǐng)域中一直是非常重要的主題。隨著World Wide Web(WWW)和Internet技術(shù)的迅速發(fā)展,使得數(shù)據(jù)庫技術(shù)成為最熱門技術(shù)之一。</p><p>  Microsoft SQL server 2000是目前使用最為廣泛的數(shù)據(jù)庫,它與Windows網(wǎng)絡(luò)操作系統(tǒng)的無縫繼成,智能化的內(nèi)容管理,強大的功能,使它得到大量用戶的喜愛。</p><

50、p><b>  DBS功能:</b></p><p>  1、 DBMS提供數(shù)據(jù)定義語言(Data Definition Language,DDL),用戶通過它可以方便地對數(shù)據(jù)庫中的數(shù)據(jù)對象進行定義。</p><p>  2、 DBMS提供數(shù)據(jù)操縱語言(Data Manipulation Language, DML),用戶可以使用DML操縱數(shù)據(jù)實現(xiàn)對數(shù)據(jù)的基本操

51、作如查詢、插入、刪除和修改。</p><p>  數(shù)據(jù)庫在建立、運用和維護時由數(shù)據(jù)庫管理系統(tǒng)統(tǒng)一管理、統(tǒng)一控制,以保證數(shù)據(jù)的安全性、完整性、多用戶對數(shù)據(jù)的開發(fā)使用以及發(fā)生故障后的系統(tǒng)恢復(fù)。</p><p>  數(shù)據(jù)庫的建立和維護功能 。它包括數(shù)據(jù)庫初始數(shù)據(jù)的輸入、轉(zhuǎn)換功能,數(shù)據(jù)庫的轉(zhuǎn)儲、恢復(fù)功能,數(shù)據(jù)庫的重組織、重構(gòu)造功能和性能分析、監(jiān)視功能等等.這些功能常常由一些使用程序完成的。<

52、/p><p>  由于SQL在安全上,使用簡潔性上具有很大的優(yōu)勢,所以在數(shù)據(jù)庫的選擇上,我選擇了SQL數(shù)據(jù)庫作為后臺數(shù)據(jù)庫,數(shù)據(jù)庫的名稱是 jiang。</p><p>  社區(qū)服務(wù)與管理系統(tǒng)的數(shù)據(jù)庫設(shè)計</p><p><b>  數(shù)據(jù)庫的表結(jié)構(gòu)設(shè)計</b></p><p>  社區(qū)服務(wù)與管理系統(tǒng)共有10個表每個表的基本結(jié)

53、構(gòu)和功能如下。</p><p>  1、yonghu表:普通用戶的注冊表用于登記注冊用戶的注冊信息。結(jié)構(gòu)如表4-1:</p><p>  表4-1:用戶信息表</p><p>  2、guanliyuan表:用于登記管理員的帳號信息。結(jié)構(gòu)如表4-2:</p><p>  表4-2:管理員信息表</p><p>  3、

54、jumin表:主要對社區(qū)居民信息(姓名,身份證號,居住單元,電話號碼)進行統(tǒng)計。結(jié)構(gòu)如表4-3:</p><p>  表4-3:居民信息表</p><p>  Id就是居住人員的身份證號,因此id就是主鍵。</p><p>  4、wailairenyuan表:統(tǒng)計外來人員進入進出時間和所帶物品,主鍵是 id。結(jié)構(gòu)如表4-4:</p><p>

55、;  表4-4:外來人員信息表</p><p>  5、xinxi表:用于公告欄信息發(fā)布,id是主鍵。結(jié)構(gòu)如表4-5:</p><p>  表4-5:公告信息表</p><p>  6、 yijian表:記錄用戶提交的意見,id是主鍵。結(jié)構(gòu)如表4-6:</p><p><b>  表4-6:意見表</b></p&g

56、t;<p>  7、 yijianhuifu表:記錄管理員對用戶意見的回復(fù),rid字段是用來記錄回復(fù)的哪個意見的,id是主鍵,結(jié)構(gòu)如表4-7:</p><p>  表4-7:意見反饋表</p><p>  另外論壇還有三個表:版塊表, 帖子表和回復(fù)表。</p><p>  board表:用來記錄論壇版塊的。結(jié)構(gòu)如表4-8:</p><

57、;p><b>  表4-8:版塊表</b></p><p>  wenzhang 表:用來記錄論壇帖子。結(jié)構(gòu)如表4-9:</p><p><b>  表4-9:帖子表</b></p><p>  rwenzhang表:記錄用戶對論壇帖子回復(fù)的文章。主鍵是id結(jié)構(gòu)如4-10:</p><p>&

58、lt;b>  表4-10:回復(fù)表</b></p><p><b>  數(shù)據(jù)庫的連接</b></p><p>  1、設(shè)置數(shù)據(jù)庫的身份驗證模式,步驟為,打開sql企業(yè)管理器→右鍵單擊控制臺→選擇屬性→單擊安全性→選擇sql身份驗證;另外還要新建一個登陸用戶,我這兒直接用的系統(tǒng)帳號sa。</p><p>  2、設(shè)置數(shù)據(jù)源:打開控

59、制面板→選擇管理工具→打開選擇數(shù)據(jù)源→選擇系統(tǒng)dsn→點擊添加→選擇server sql→設(shè)置數(shù)據(jù)源名(我輸入的是jiang)和設(shè)置服務(wù)器為(local) →在下一步中→選擇使用用戶輸入登陸ID和密碼的 SQL身份驗證在下面輸入登陸ID和密碼→在下一步中選擇更改默認數(shù)據(jù)庫,選擇你要連接的數(shù)據(jù)庫(我選擇的是jiang)→最后單擊完成。你可以單擊測試,如果顯示測試成功,表明你已經(jīng)建好了數(shù)據(jù)源否則,表示你在建數(shù)據(jù)源的過程中設(shè)置錯了值。<

60、/p><p>  3、最后一步則是在程序中編寫連接代碼,具體代碼如下:</p><p>  <%set conn=server.createobject("adodb.connection")</p><p>  conn.open "dsn=jiang;uid=sa;pwd=sa"%></p><

61、p><b>  數(shù)據(jù)庫關(guān)系圖</b></p><p>  本系統(tǒng)只有一個關(guān)系圖DIAGRAM1主要是防止普通用戶的用戶名的更改,而造成yijian表和wenzhang表里的作者項與yonghu表里的作者名稱不符和。如圖4-1:</p><p>  圖4-1 數(shù)據(jù)庫關(guān)系圖</p><p>  其中用戶表的usernam是主鍵,而yijian

62、表里的做zuozhe和wenzhang表里的name是外鍵。</p><p><b>  社區(qū)管理系統(tǒng)的實現(xiàn)</b></p><p>  社區(qū)管理系統(tǒng)注冊和帳號管理模塊</p><p>  注冊界面如圖5-1:</p><p>  圖5-1 系統(tǒng)注冊界面</p><p>  在注冊界面中,QQ選項

63、必須輸入數(shù)字,其他的由于在數(shù)據(jù)庫中的字段屬性設(shè)置的字符類型,所以可以任意輸入數(shù)據(jù)。注冊的基本代碼如下:</p><p><b>  <% </b></p><p>  user=request.form("user")</p><p>  pwd=request.form("pwd")</p&

64、gt;<p>  sex=request.form("sex")</p><p>  QQ=request.form("QQ")</p><p>  email=request.form("email")</p><p><b>  t=now()</b></p&g

65、t;<p>  if user="" or pwd="" or QQ="" or email="" then</p><p>  response.write"<script language=javascript>alert('請?zhí)顚懲暾?#39;);history.back(-1);&l

66、t;/script>"</p><p>  response.End()</p><p><b>  else</b></p><p>  user=request.form("user")</p><p>  pwd=request.form("pwd")<

67、/p><p>  sex=request.form("sex")</p><p>  QQ=request.form("QQ")</p><p>  email=request.form("email")</p><p><b>  dim rs</b></p

68、><p><b>  dim sql</b></p><p>  set rs=server.createobject("adodb.recordset")</p><p>  sql="select*from yonghu where username='"&user&"&

69、#39;"</p><p>  set rs=conn.execute(sql)</p><p>  if not rs.eof then</p><p>  response.write"<script>alert('?。?!對不起,用戶名已經(jīng)被占用,請使用其他用戶名');history.back(-1);</s

70、cript>"</p><p><b>  %></b></p><p><b>  <% </b></p><p><b>  end if</b></p><p><b>  rs.close </b></p>

71、;<p>  set rs=nothing%></p><p>  <% end if %></p><p>  <% set reg=conn.execute("insert into yonghu(username,pwd,sex,QQ,email,time)values('"&user&"&#

72、39;,'"&pwd&"','"&sex&"','"&QQ&"','"&email&"','"&t&"')")</p><p>  respons

73、e.write"<font size=2>您已經(jīng)注冊成功</font>"</p><p>  response.End()</p><p><b>  %></b></p><p>  帳號管理就分為普通用戶和管理員兩個不同頁面,實現(xiàn)方式是根據(jù)不同用戶登陸產(chǎn)生的不同session變量來確定,代碼

74、如下:</p><p>  <%if session("name")<>empty then </p><p>  response.Redirect("mzhanghao.asp")</p><p><b>  else</b></p><p>  respon

75、se.Redirect("uzhanghao.asp")</p><p><b>  end if</b></p><p><b>  %></b></p><p>  普通用戶則導(dǎo)向uzhanghao.asp管理員則導(dǎo)向mzhanghao.asp。在普通用戶頁面中,你可以更改自己的注冊資料如圖5

76、-2:</p><p>  圖5-2 用戶信息更改界面</p><p><b>  代碼如下:</b></p><p><b>  <%</b></p><p>  t1=request("t1")</p><p>  t2=request(&quo

77、t;t2")</p><p>  t3=request("t3")</p><p>  t4=request("t4") </p><p>  s="select * from yonghu where (username='"&session("user"

78、)&"')"</p><p>  set rs=conn.execute(s)</p><p>  if t1=""or t2="" or t3="" or t4=""then</p><p>  response.Redirect("zce

79、e.html")</p><p>  elseif rs.eof then</p><p>  response.write"沒有該用戶"</p><p><b>  else </b></p><p>  set objs=conn.execute("update yonghu

80、 set pwd='"&t1&"',sex='"&t2&"',qq='"&t3&"',email='"&t4&"'where (username='"&session("user")

81、&"') ")</p><p>  response.write("更新成功")</p><p>  end if %> </p><p>  管理員則可以查看和刪除注冊用戶的資料,如圖5-3:</p><p>  圖5-3 管理用戶資料界面</p><p

82、>  管理員通過單擊“刪除”來刪除普通用戶的注冊名,這里主要是通過超鏈接傳遞一個參數(shù)(yonghu表里的id,數(shù)據(jù)庫系統(tǒng)自動生成)到刪除處理程序,通過查找符合參數(shù)的記錄,最后再刪除這條記錄。</p><p>  查看居住人員和外來人員信息模塊</p><p>  查看居住人員和外來人員信息模塊,我們首先要在依據(jù)你輸入的身份證號碼來確定查詢哪個人如圖5-4:</p>&l

83、t;p>  圖5-4 查詢?nèi)藛T信息界面</p><p>  例如輸入一個11(當然實際不可能有這種格式的身份證號碼,這里只是為了演示方便)就會在顯示頁面看到住戶的姓名、身份證號碼、居住單元和電話號碼。如圖5-5:</p><p>  圖5-5 人員信息顯示界面</p><p>  而查看外來人員信息同查看居住人員信息一樣,這里就不再敘述了。而管理員的權(quán)限更高,

84、有查詢、刪除、插入和更新。代碼跟普通用戶的查詢的代碼差不多,只是SQL語句的不同而已</p><p><b>  查看公告信息模塊</b></p><p>  查看公告信息的實現(xiàn)代碼基本上同查看住戶的代碼相同,唯一不同的是加入了分頁顯示,如圖5-6:</p><p>  圖5-6 公告信息顯示界面</p><p>  其

85、中普通用戶只能查看,而管理員則可以刪除和發(fā)布。這里刪除同帳號管理里的刪除有所不同。帳號管理里的刪除是通過表單傳遞一個身份證號碼來確定刪除誰,這里是通過超鏈接里傳遞一個參數(shù)給刪除頁面,然后刪除。代碼如下:</p><p>  <a href="delete2.asp?name=<%=rs("username")%>">刪除</a></

86、p><p>  發(fā)布基本上同注冊差不多。另外,分頁顯示顯示的實現(xiàn)代碼如下:</p><p><b>  <%</b></p><p>  set rs=server.createobject("adodb.recordset") </p><p>  rs.open"select * fr

87、om xinxi order by time desc",conn,3</p><p>  rs.pagesize=5</p><p>  a=cint(request.querystring("a"))</p><p>  if a=0 then</p><p><b>  a=1</b>

88、</p><p><b>  else</b></p><p>  rs.absolutepage=a</p><p><b>  end if</b></p><p><b>  %></b></p><p>  <td width=&qu

89、ot;83" valign="top"><a href="gonggao.asp? ">第一頁</a>&nbsp;</td></p><p>  <td width="60">&nbsp;</td></p><p>  <%If a&

90、gt; 1 Then %></p><p>  <td width="91" valign="top"><a href="gonggao.asp?a=<%=a-1%> ">上一頁</a>&nbsp;</td></p><p>  <% end if%&

91、gt;</p><p>  <td width="65">&nbsp;</td></p><p>  <%If (a <rs.PageCount )Then %></p><p>  <td width="87" valign="top"><

92、;A HREF="gonggao.asp?a=<%=a+1%>">下一</A>&nbsp;</td></p><p>  <%End If %></p><p>  其主要實現(xiàn)步驟有2步:</p><p>  1、首先超鏈接到本頁,傳回一個參數(shù)a,第一頁就傳遞a=1,下一頁傳遞a=a-

93、1,上一頁傳遞a=a+1;</p><p>  2、 在程序起始部分獲取a值,代碼是a=cint(request.querystring("a")),然后設(shè)置顯示第幾頁,代碼是rs.absolutepage=a,意思是將顯示頁面設(shè)置成第a頁,absolutepage是分頁顯示的一個屬性,指當前顯示第幾頁。</p><p><b>  意見反饋模塊</b&

94、gt;</p><p>  意見反饋模塊有普通用戶提交意見和管理員回復(fù)意見的功能,普通用戶提交意見實現(xiàn)代碼同公告欄管理員發(fā)布差不多。管理員回復(fù)意見只是對每個意見進行回復(fù),程序中將回復(fù)意見表的字段rid與意見表id字段相同,以便使其相關(guān)聯(lián)。另外,普通用戶同管理員查看意見的實現(xiàn)代碼的特點是,它不像帳號管理模塊那樣根據(jù)不同用戶的登陸而導(dǎo)向不同的頁面,而是管理員和普通用戶是一個頁面,只是根據(jù)不同用戶而執(zhí)行,不同的程序段,

95、意見查看代碼如下:</p><p><b>  <%</b></p><p>  set rs=server.createobject("adodb.recordset") %></p><p>  <%if session("name")= empty then %></p

96、><p>  <%rs.open"select * from yijian where (zuozhe='"&session("user")&"') order by time desc",conn,3%> </p><p><b>  <%else%> </b

97、></p><p>  <%rs.open"select * from yijian order by time desc",conn,3%></p><p>  <%end if%> </p><p>  session("name")是管理員登陸是產(chǎn)生的客戶端變量,程序的意思是管理員和普通用戶

98、到意見查看頁面查看意見時,定義不同的sql查詢語句。這樣,由于SQL語句的不同,rs記錄集中的內(nèi)容便會不同。在顯示意見時,普通用戶和管理員就看到了不同內(nèi)容的頁面。</p><p><b>  論壇模塊</b></p><p>  論壇模塊重點主要是show頁面的實現(xiàn)如圖5-7:</p><p>  圖5-7 論壇帖子顯示界面</p>

99、<p>  通過截圖,可以看到show的重點將帖子和回復(fù)的帖子顯示在一起,這里實現(xiàn)的方式,主要是將帖子和回復(fù)的帖子分別存在wenzhang和rwenzhang表中,其中wenzhang表有一個字段id對應(yīng)rwenzhang表中的字段rid。這樣,就可以先顯示wenzhang里的帖子,然后再顯示rwenzhang里rid字段與顯示的帖子的id 字段相同的回復(fù)帖子就可以了。具體代碼如下:</p><p>

100、;  <% idd=Request.Querystring("id") %></p><p><b>  <%</b></p><p><b>  dim rs</b></p><p><b>  dim sql</b></p><p> 

101、 set rs = server.createobject("adodb.recordset")</p><p>  sql = "select*from rwenzhang where bid=0 and rid="&idd&" order by id desc"</p><p>  count=conn.exe

102、cute("select count(id) from rwenzhang where bid=0 and rid="&idd&"")(0)</p><p>  on error resume next</p><p>  rs.Open sql,conn,1</p><p>  rs.pagesize=2&l

103、t;/p><p>  a=cint(request.querystring("a"))</p><p>  if a=0 then</p><p><b>  a=1</b></p><p><b>  else</b></p><p>  rs.absolu

104、tepage=a</p><p><b>  end if%></b></p><p>  第一行就是獲取原帖的id號,然后定義SQL語句sql = "select*from rwenzhang where bid=0 and rid="&idd&" order by id desc"是就是查找滿足rid=

105、id的記錄。</p><p><b>  難點及解決方法</b></p><p><b>  用戶登錄判斷</b></p><p>  登陸判斷主要有兩點:1.先通過表單將用戶提交的數(shù)據(jù)傳遞給處理頁面,然后在處理頁面里用request獲取數(shù)據(jù),在數(shù)據(jù)庫中查找有沒有該記錄,沒有則提示用戶名錯誤,有的話則產(chǎn)生seesion變量

106、,普通用戶是session(“user”),管理員session(“name”)是代碼如下:</p><p>  <!--#include file="conn.asp"--> </p><p>  <% uname=request("uname")</p><p>  pwd=request("p

107、wd")</p><p>  usertype=request("usertype") </p><p>  if usertype="yh" then </p><p>  set rs=server.createobject("adodb.recordset")</p><

108、;p>  sql="select * from yonghu where username='"&uname&"' and pwd='"&pwd&"'"</p><p>  rs.open sql,conn,3,3</p><p>  if rs.bof or

109、rs.eof then</p><p>  response.write"<SCRIPT language=JavaScript>alert('錯誤的用戶名或密碼,請重新輸入!');"</p><p>  response.write"javascript:history.go(-1)</SCRIPT>"<

110、;/p><p><b>  else</b></p><p>  session("user")=uname</p><p>  response.Redirect "index.asp"</p><p><b>  end if </b></p>

111、<p><b>  else</b></p><p>  set rs=server.createobject("adodb.recordset")</p><p>  sql="select * from guanliyuan where id='"&uname&"' and

112、 password='"&pwd&"'"</p><p>  rs.open sql,conn,3,3</p><p>  if rs.eof then</p><p>  response.write"<SCRIPT language=JavaScript>alert('錯

113、誤的用戶名或密碼,請重新輸入!');"</p><p>  response.write"javascript:history.go(-1)</SCRIPT>"</p><p><b>  else</b></p><p>  session("name")=uname &l

114、t;/p><p>  response.Redirect "index.asp"</p><p><b>  end if</b></p><p><b>  end if </b></p><p><b>  %></b></p><

115、;p>  2.在需要用戶先登陸的頁面加入以下代碼:</p><p>  <%if session("name")= empty and session("user")=empty then </p><p>  response.Redirect("zcee4.html")</p><p>&l

116、t;b>  end if</b></p><p><b>  %></b></p><p>  意思是如果用戶沒有以任何一種身份登陸的話,那就不能訪問這個頁面。</p><p>  查看意見根據(jù)不同級別用戶的顯示模式</p><p>  這里主要通過兩種方法實現(xiàn):一種是通過不同的session變量

117、導(dǎo)向不同的頁面,第二種是,在程序中加條件控制。</p><p><b>  結(jié) 論</b></p><p>  本文簡要介紹了一個具有典型B/S體系結(jié)構(gòu)的網(wǎng)絡(luò)社區(qū)服務(wù)與管理系統(tǒng),重點討論了系統(tǒng)開發(fā)工具、開發(fā)語言等關(guān)鍵技術(shù)以及系統(tǒng)的數(shù)據(jù)庫建設(shè),系統(tǒng)流程圖和功能模塊圖以及代碼分析。這些過程的討論和分析,讓大家對系統(tǒng)的體系結(jié)構(gòu),功能模塊等有了更深的了解。目前此系統(tǒng)基本

118、可以完全實現(xiàn)初期預(yù)定的功能,但系統(tǒng)仍然有一些不盡人意,而這些問題主要集中在系統(tǒng)的安全上,雖然系統(tǒng)已經(jīng)通過相關(guān)的控制語句對登陸用戶身份進行驗證,但是在當今網(wǎng)絡(luò)信息安全中,僅僅對用戶身份驗證是不夠的,還需要對傳送數(shù)據(jù)進行加密,防止數(shù)據(jù)傳輸過程中被篡改等攻擊進行防御。因此在今后的工作里,這些功能的實現(xiàn)還需要更高的技術(shù)支持。在日常維護過程中,都需要進行嚴格的檢測,以保證系統(tǒng)的服務(wù)質(zhì)量。</p><p><b>

119、  參考文獻</b></p><p>  [1] 溫明等.ASP網(wǎng)站建設(shè)實錄[M]. 北京:紅旗出版社,2005。</p><p>  [2] 王珊等.數(shù)據(jù)庫基礎(chǔ)與應(yīng)用[M]. 北京:人民郵電出版社,2003。</p><p>  [3] 金林樵.網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)及應(yīng)用[M]. 北京:機械工業(yè)出版社,2002。</p><p>  

120、[4] 鄧文淵.ASP與網(wǎng)絡(luò)數(shù)據(jù)庫技術(shù)[M]. 北京:中國鐵道出版社,2004。</p><p>  [5] 楊得新等.SQL SEVER數(shù)據(jù)庫系統(tǒng)[M]. 北京:機械工業(yè)出版社,2004。</p><p>  [6] 郭瑞軍等.ASP 數(shù)據(jù)庫開發(fā)示例精粹[M]. 北京:電子工業(yè)出版社,2005。</p><p>  [7] 方睿 ,刁仁宏, 吳四九.網(wǎng)絡(luò)數(shù)據(jù)庫原理

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論