[工學(xué)]電子論壇的設(shè)計與實現(xiàn)畢業(yè)設(shè)計說明書_第1頁
[工學(xué)]電子論壇的設(shè)計與實現(xiàn)畢業(yè)設(shè)計說明書_第2頁
[工學(xué)]電子論壇的設(shè)計與實現(xiàn)畢業(yè)設(shè)計說明書_第3頁
[工學(xué)]電子論壇的設(shè)計與實現(xiàn)畢業(yè)設(shè)計說明書_第4頁
[工學(xué)]電子論壇的設(shè)計與實現(xiàn)畢業(yè)設(shè)計說明書_第5頁
已閱讀5頁,還剩59頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、摘摘 要要隨著計算機(jī)的廣泛應(yīng)用,人們已經(jīng)對網(wǎng)絡(luò)不再感到陌生。在科技飛速發(fā)展的今天,電腦信息技術(shù)與各行各業(yè)進(jìn)行了有效的結(jié)合。人們在網(wǎng)上可以進(jìn)行網(wǎng)上購物,網(wǎng)上交友,電子商務(wù),網(wǎng)絡(luò)營效等等。面對強(qiáng)大的網(wǎng)絡(luò)功能,必須在某方面要有一個健全的系統(tǒng)才能使網(wǎng)絡(luò)發(fā)揮的淋漓盡致。在這個平臺上,論壇提供了一個全新的人類溝通新方式。論壇使用 asp 進(jìn)行開發(fā),數(shù)據(jù)庫采用 access。系統(tǒng)主要實現(xiàn)了用戶在論壇中對帖子的發(fā)表和回復(fù),以及管理員對用戶信息和后臺的管理。描述了電子論壇系統(tǒng)的設(shè)計與實現(xiàn)。首先對系統(tǒng)的需求進(jìn)行了分析,建立系統(tǒng)工作流程圖,設(shè)計系統(tǒng)數(shù)據(jù)庫,對數(shù)據(jù)庫結(jié)構(gòu)進(jìn)行了詳細(xì)分析。然后劃分系統(tǒng)功能模塊,最后詳細(xì)描

2、述了各個功能模塊實現(xiàn)的方法,并給出相應(yīng)代碼。關(guān)鍵詞:電子論壇系統(tǒng),asp,accessabstractwith the wide application of the computer, people have already no longer felt strange the network. today, science and technology is developed at full speed, computer information technology and all trades and professions have carried on effective com

3、bination. people can carry on the online shopping , matchmaker , e-commerce on the net, camps result of the network ,etc. in the face of the strong network function , we must have a sound network function system . forum for development using asp, database using access. system is mainly to achieve a

4、user posts in the forum for the publication and reply, and the administrator of the management of user information and background. describes the electronic systemdesign and implementation forums. first, the system needs analysis, create a system of work flow, design database, the database structure

5、in detail. system function and then divided into modules, and finally a detailed description of each functional module approach, and give the corresponding code.key words: bbs, asp, access目 錄第 1 章引言 .11.1 課題背景.11.2 國內(nèi)外研究現(xiàn)狀.11.3 課題的研究意義.1第 2 章 系統(tǒng)分析 .32.1 相關(guān)術(shù)語解釋.32.2 access 數(shù)據(jù)庫.42.3 系統(tǒng)需求分析.42.3.1 用戶功能

6、.42.3.2 統(tǒng)計功能.52.3.3 帖子功能.52.3.4 版面功能.62.3.5 其他功能.62.4 統(tǒng)功能描述.72.4.1 主要功能.72.4.2 論壇擴(kuò)展功能.11第 3 章 系統(tǒng)設(shè)計 .123.1 功能模塊 .123.2 數(shù)據(jù)庫設(shè)計 .153.2.1 建立數(shù)據(jù)表間的關(guān)系.153.2.2 數(shù)據(jù)表結(jié)構(gòu)的詳細(xì)設(shè)計.16第 4 章 系統(tǒng)詳細(xì)設(shè)計 .214.1 用戶模塊 .214.1.1 用戶登錄.214.1.2 用戶注冊.224.1.3 與其他用戶聯(lián)系.244.2 帖子模塊 .254.2.1 發(fā)布/刪除/修改帖子模塊 .254.2.2 帖子瀏覽模塊.274.2.3 帖子搜索模塊.294.

7、2.4 其它功能.304.3 管理員模塊 .314.3.1 用戶管理.314.3.2 版面管理.334.3.3 帖子管理.344.3.4 數(shù)據(jù)庫備份和恢復(fù).36結(jié) 論 .38致 謝 .39參考文獻(xiàn) .40附錄 設(shè)計系統(tǒng)部分源代碼 .42contentschapter 1 introduction .11.1 subject background.11.2 research status.11.3 research signifcance.1chapter 2 system analysis.32.1 explanation of related terms.32.2 access databa

8、se.42.3 system requirements analysis.42.3.1 user features .42.3.2 statistcal functions.52.3.3 post function .52.3.4 layout features.62.3.5 other features.62.4 systemfunctional description.72.4.1 main function.72.4.2 forum extensions.11chapter 3 system design .123.1 function module .123.2 database de

9、sgn.153.2.1 establish the relationship between databasetablie .153.2.2 detailed design data sheet bodies .15chapter 4 detailed of the system.204.1 user module.204.1.1 user login.204.1.2 user up.214.1.3 with other user.234.2 post module.244.2.1 published/delete/modify post module .244.2.2 browse post

10、s.264.2.3 post search module.284.2.4 other features.294.3 administrator module.304.3.1 user management.304.3.2 forum management.324.3.3 post management .334.3.4 database backup and restore.35conclusion .37acknowledgements .38references.39appendix parts of soure code of the designed system.411第 1 章引言

11、1.1 課題背景論壇服務(wù)已經(jīng)是互聯(lián)網(wǎng)上的一種極為常見的互動交流服務(wù)。論壇可以為網(wǎng)友提供開放性的分類討論區(qū)專題服務(wù),網(wǎng)友們可以在此發(fā)表自己的觀感,交流某些技術(shù),經(jīng)驗?zāi)酥寥松母形蚺c憂歡,亦可以作為用戶和商家交流的渠道,商家也可以在此回答用戶提出的問題或發(fā)布某些消息。1.2 國內(nèi)外研究現(xiàn)狀bbs 起源于 20 世紀(jì)初。最初,論壇只是用于發(fā)布公共信息和討論問題的在線交流平臺;后來,隨著網(wǎng)絡(luò)的普及,論壇的功能也越來越豐富,不僅僅可以發(fā)表文字,更是可以使用多媒體,受到了廣大網(wǎng)民的歡迎。因此,商業(yè)網(wǎng)站對論壇重視起來,紛紛在自己的網(wǎng)站上開辟論壇,作為與網(wǎng)民交流的園地,同時在線技術(shù)支持和在線服務(wù)也在論壇中開展

12、起來。1.3 課題的研究意義目前呈幾何增長的互聯(lián)網(wǎng)網(wǎng)站中,有相當(dāng)一部分仍固守“靜態(tài)” ,無形中已大大落后于時代的步伐。所謂“靜態(tài)”指的就是網(wǎng)站的網(wǎng)頁內(nèi)容“固定不變”,當(dāng)用戶瀏覽器通過互聯(lián)網(wǎng)的 http(hypertext transport protocol)協(xié)議向 web 服務(wù)器請求提供網(wǎng)頁內(nèi)容時,服務(wù)器僅僅是將原已設(shè)計好的靜態(tài)html 文檔傳送給用戶瀏覽器。其頁面的內(nèi)容使用的僅僅是標(biāo)準(zhǔn)的 html 代碼,最多再加上流行的 gif89a 格式的動態(tài)圖片,比如產(chǎn)生幾只小狗小貓跑來2跑去的動畫效果。若網(wǎng)站維護(hù)者要更新網(wǎng)頁的內(nèi)容,就必須手動地來更新其所有的 html 文檔?!办o態(tài)”網(wǎng)站的致命弱點就

13、是不易維護(hù),為了不斷更新網(wǎng)頁內(nèi)容,你必須不斷地重復(fù)制作 html 文檔,隨著網(wǎng)站內(nèi)容和信息量的日益擴(kuò)增,你就會感到工作量大得出乎想象。所謂“動態(tài)”就是指具有以下幾個特點的網(wǎng)站:1 “交互性”即網(wǎng)頁會根據(jù)用戶的要求和選擇而動態(tài)改變和響應(yīng),將瀏覽器作為客戶端界面,這將是今后 web 發(fā)展的大勢所趨。2 “自動更新”即無須手動地更新 html 文檔,便會自動生成新的頁面,可以大大節(jié)省工作量。3 “因時因人而即當(dāng)不同的時間、不同的人訪問同一網(wǎng)址時會產(chǎn)生不同的頁面。這種具有動態(tài)特性的網(wǎng)站的典型代表就是-論壇.3第 2 章 系統(tǒng)分析2.1 相關(guān)術(shù)語解釋html 語言:在網(wǎng)上發(fā)布消息,必須使用一種每一臺計算

14、機(jī)都能夠識別的語言,這就是 html(hypertext markup language) ,超文本語言。使用html 語言可以賦予網(wǎng)絡(luò)設(shè)計者許多強(qiáng)有力的工具,比如:1使用各種基礎(chǔ)的印刷元素例如標(biāo)題、文字、表格、列表、照片、插圖等來發(fā)布在線的文檔。2通過超文本鏈接可以使用戶方便地在各種信息之間切換,就像單擊一個按鈕一樣簡單。3設(shè)計一種表單控件控制網(wǎng)絡(luò)上的各種傳輸、遠(yuǎn)程服務(wù)等功能,就像查詢信息、訂購貨物等。4在文檔中直接包含視頻剪接、效片斷、各種腳本程序和另外的許多對象,比如 flash 和 active 控件。以上的這些功能是一般的文檔不能完全做到的。這些優(yōu)勢使得 html 成為網(wǎng)絡(luò)上使用的事

15、實標(biāo)準(zhǔn)。asp 語言:在網(wǎng)絡(luò)程序設(shè)計中,asp(active server pages)是服務(wù)器端的一種未經(jīng)編譯的開放式程序,程序設(shè)計者可按 asp 的要求來編寫功能強(qiáng)大的網(wǎng)絡(luò)應(yīng)用程序,并實現(xiàn)服務(wù)器端的數(shù)據(jù)處理及數(shù)據(jù)上傳與下載。這種程序通常被稱作“asp 程序” (或“asp 頁” ) 。一個 asp 程序通常包括 html 標(biāo)簽語句、文本和腳本程序等。由于這類程序是以“.asp”為擴(kuò)展名存放的,因此對應(yīng)的文件可稱作“asp 文件” 。一個 asp 程序的語句串,部分來自于腳本語言,部分來自于html。其中,用 html 語言設(shè)計的程序稱作 html 文檔,是由客戶端瀏覽器解釋執(zhí)行的一種程序;

16、用腳本語言設(shè)計的部分,則是專職服務(wù)器來運行的。42.2 access 數(shù)據(jù)庫access 是一種關(guān)系型數(shù)據(jù)庫管理系統(tǒng),其主要特點如下:(1)存儲方式單一(2)面向?qū)ο螅?)界面友好、易操作(4)集成環(huán)境、處理多種數(shù)據(jù)信息(5)access 支持 odbc(開發(fā)數(shù)據(jù)庫互連,open data base connectivity) ,利用 access 強(qiáng)大的 dde(動態(tài)數(shù)據(jù)交換)和 ole(對象的聯(lián)接和嵌入)特性,可以在一個數(shù)據(jù)表中嵌入位圖、聲音、excel 表格、word 文檔,還可以建立動態(tài)的數(shù)據(jù)庫報表和窗體等。access 還可以將程序應(yīng)用于網(wǎng)絡(luò),并與網(wǎng)絡(luò)上的動態(tài)數(shù)據(jù)相聯(lián)接。利用數(shù)據(jù)庫訪

17、問頁對象生成 html 文件,輕松構(gòu)建internet/intranet 的應(yīng)用。2.3 系統(tǒng)需求分析隨著時代的進(jìn)步,人們對網(wǎng)絡(luò)的要求也越來越高,論壇就是在這種背景下誕生的。它不僅包含了網(wǎng)站原有的特點,還可以讓人們在瀏覽網(wǎng)頁的情況下還可以發(fā)表自己的觀點,其實這只是最基本的,它還有許多優(yōu)點,下面就讓我們簡潔的陳述一下:2.3.1 用戶功能(1)發(fā)帖時自動記錄用戶名,email,網(wǎng)友無需每次都輸入。(2)用戶個人信息記錄,密碼提示功能,當(dāng)用戶忘記密碼時,可以由密碼提示功能獲得密碼。(3)實現(xiàn)用戶頭像功能,您可以象 qq 一樣,選擇自己喜歡的頭像圖標(biāo)。(4)查詢與更改密碼、個人信息,及他人信息。5(

18、5)實現(xiàn)游客瀏覽功能,你即使不進(jìn)行注冊,同樣可以瀏覽帖子內(nèi)容,但要發(fā)言必須注冊。緩存保存用戶名和密碼功能,勿需每次發(fā)言都要填寫一次,為用戶提供方便。版主功能:(1)版面顯示版主主頁地址(版主只需在個人信息中維護(hù)自己的信息,輸入主頁地址即可。(2)版主登錄之后可以進(jìn)入版主管理菜單,可以管理論壇版面,管理精華區(qū)域,版主帖子查詢,編輯版面說明等功能。 查詢功能:我們的論壇系統(tǒng)具有超強(qiáng)帖子查詢功能,可以根據(jù)您感興趣的內(nèi)容快速獲得信息。您可以:(1)按發(fā)言人、主題、內(nèi)容的查詢;(2)按帖子的 id 查詢;(3)查詢最新 50 帖;(4)支持多條件復(fù)合模糊查詢功能。2.3.2 統(tǒng)計功能(1)顯示論壇當(dāng)前注

19、冊總?cè)藬?shù)、當(dāng)前帖子總數(shù)、帖子點擊總數(shù)、當(dāng)前在線人數(shù)。 (2)論壇排行榜,對各個版面的點擊數(shù)、文章數(shù)進(jìn)行排序。(3)用戶表現(xiàn)積分排行,調(diào)動用戶積極性。帖子點擊統(tǒng)計,方便了解熱點話題。本日版面排行榜,本日作者排行榜。2.3.3 帖子功能(1)顯示帖子發(fā)表日期,點擊數(shù),字節(jié)數(shù),回復(fù)帖子數(shù),新帖圖形提示, 24 小時內(nèi)新帖一目了然。(2)設(shè)定帖子內(nèi)容最大允許的字節(jié)數(shù)。是否允許顯示前帖內(nèi)容(如同回復(fù)email 一樣回復(fù)帖子) ?;貜?fù)帖子 email 通知功能,自動將帖子內(nèi)容和相關(guān)鏈接寄回被回復(fù)人的信箱中。多版面設(shè)置,每個版面可以有自己的版主、主頁連接,可以獨立顯示單一版面。62.3.4 版面功能(1)具

20、有強(qiáng)大的分頁查看工具條,帖子列表支持分頁顯示,輕松查看所有帖子。 (2)帖子層次列表,結(jié)構(gòu)清晰,一目了然。 2.3.5 其他功能(1)全面轉(zhuǎn)化 html tag,方便討論主頁設(shè)計、 web 編程,同時可以有效防止使用腳本語言進(jìn)行攻擊。(2)類似于 frontpage、dreamweaver 論壇內(nèi)容編輯器,以方便網(wǎng)友使用html 格式顯示帖子內(nèi)容。此功能代碼部分參考了 ubb 代碼。ubb 代碼是html 的一個變種,是 ultimate bulletin board (國外一個 bbs 程序,國內(nèi)也有不少地方使用這個程序),采用的一種特殊的 tag 來達(dá)到 html 的效果或?qū)崿F(xiàn)其他的功能。

21、論壇的對象不是孤立的,它們是緊密聯(lián)系的,下面是論壇各個對象之間的關(guān)聯(lián)表,關(guān)聯(lián)是單向的,是指左側(cè)對象對上方對象的活動。無關(guān)聯(lián)的用表示,如果兩者只要單向關(guān)聯(lián),那么在另一個對象關(guān)聯(lián)時用表示。表 2-1 各對象之間的關(guān)系表用戶版面公共信息帖子管理員用戶注冊 修改 瀏覽 聯(lián)系瀏覽瀏覽 發(fā)布瀏覽 發(fā)布 修改 刪除版面7公共信息帖子管理員刪除 授權(quán)添加 刪除 修改添加 刪除 修改添加 刪除 修改至此,論壇的需要分析完成,接下來是論壇的功能設(shè)計。2.4 統(tǒng)功能描述2.4.1 主要功能首先從用戶開始,用戶關(guān)聯(lián)的對象是自身,版面,公共信息,帖子。分別根據(jù)用戶與這些對象的聯(lián)系給出一個明確的菜單表 2-2 用戶功能表

22、序號功能名稱說明1用戶注冊用戶在論壇填寫必要信息就可以成為注冊用戶,注冊后,可修改自己的注冊信息2用戶登錄用戶注冊后可使用用戶名,密碼登錄,可選擇用戶名,密碼保存期限3瀏覽用戶信息注冊用戶可查看其它用戶信息4與其它用戶聯(lián)系注冊用戶可發(fā)站內(nèi)短信(續(xù)表 2-2)序號功能名稱說明5瀏覽版面任何用戶可瀏覽版面信息6瀏覽公共信息任何用戶可瀏覽公共信息7瀏覽帖子任何用戶可瀏覽帖子8發(fā)布修改刪除帖子注冊用戶登錄后可發(fā)布帖子,修改自己的8帖子,刪除自己的帖子接下來的版面,公共信息,帖子都沒有和其他對象的關(guān)聯(lián),它們在論壇中是被動對象,是被其它對象所操作。因此針對它們的主要功能是由其它對象產(chǎn)生,例如瀏覽版面就是用

23、戶的功能。管理員是論壇的一個特殊群體,它們的主要工作是保證論壇的正常運行,他們可以和論壇的所有對象產(chǎn)生聯(lián)系,因此他們的功能也很豐富。表 2-3 管理員功能表序號功能名稱說明1用戶刪除對于在論壇中造成很壞影響的用戶,應(yīng)該刪除他們的身份2用戶授權(quán)授予用戶版主權(quán)限3版面管理版面是論壇的枝干,對版面進(jìn)行添加,修改,刪除等操作4公共信息管理公共信息展示論壇的狀態(tài),不能出現(xiàn)非法言論5帖子的管理帖子是論壇的枝葉,帖子的好壞關(guān)系到論壇的健康發(fā)展,對帖子進(jìn)行刪除,移動等 現(xiàn)在分析各個對象的相關(guān)操作,設(shè)計為對象的功能實現(xiàn)接口,即為對象的操作方法。各個板塊有瀏覽列表和管理兩個方法,管理方法又可以分為添加,修改,刪除

24、 3 個子方法。用戶有瀏覽,發(fā)帖,回帖,搜索和編輯 5 個方法,管理帖子又分為列表和查看兩個子方法,管理帖子分為編輯,刪除,置頂,移動,指定精華 5 個子方法。 編輯瀏覽帖子搜索回帖發(fā)帖用戶9圖 2-4 用戶帖子管理的實體屬性圖 圖 2-5 管理員管理帖子的實體屬性圖用戶有注冊、登錄 2 個方法,管理用戶方法又分為管理用戶和設(shè)置權(quán)限 2個子方法。 圖 2-6 用戶實體屬性圖管理帖子 刪除移動置頂指定精華 管理員 編輯用戶注冊登錄10圖 2-7 管理員實體屬性圖這樣分析完后,前面列出的功能列表就有了各自的歸屬對象。論壇一般存在兩種用戶:注冊用戶和管理員。用戶的權(quán)限是向下覆蓋的,既上級權(quán)限包含下級

25、權(quán)限,在論壇中,管理員是上級權(quán)限。論壇的 3 大基本功能的相互關(guān)系如下圖所示。 圖 2-8 論壇基本功能圖系統(tǒng)還有一些是論壇的內(nèi)容更加豐富的擴(kuò)展功能。2.4.2 論壇擴(kuò)展功能下面是個一個論壇擴(kuò)展功能表。表 2-9 擴(kuò)展功能表發(fā)帖帖子列表回帖瀏覽帖子管理員管理用戶設(shè)置權(quán)限11序號功能名稱說明1用戶控制自己的信息用戶不想讓其他用戶看到自己的信息,可以控制自己的信息是否公開2用戶登錄添加驗證碼防止暴力破解密碼,輸入用戶名或密碼錯誤會重新生成驗證碼3站內(nèi)短信方便用戶在站內(nèi)聯(lián)系4帖子評價提高用戶參與論壇的積極性5帖子發(fā)布添加多媒體吸引用戶,擴(kuò)展帖子發(fā)布功能6論壇收藏保留用戶喜歡的內(nèi)容,方便用戶查看7帖子

26、搜索提供模糊搜索,方便用戶找到感興趣的主題8論壇情況顯示把論壇的一些數(shù)據(jù)顯示給用戶,如發(fā)帖數(shù),在線用戶人數(shù)等 添加了這幾個擴(kuò)展功能后,論壇就顯得平易近人多了,也更具有使用性。第 3 章 系統(tǒng)設(shè)計3.1 功能模塊模塊的劃分主要是按照每一個對象的操作來歸類。論壇操作的對象是上一節(jié)所歸納的 5 個。下面就針對這 5 個對象劃分功能模塊。用戶:有兩個模塊,一個是用戶注冊,登錄,修改信息等功能組合,是用戶對用戶自身的操作;另一個是管理員對用戶進(jìn)行刪除,授權(quán),是管理員對用戶的操作,如表 3-1。12表 3-1 用戶功能模塊表模塊模塊功能用戶注冊用戶登錄瀏覽其它用戶信息與其它用戶聯(lián)系用戶控制自己的信息用戶模

27、塊用戶登錄添加驗證碼用戶刪除管理員模塊用戶授權(quán)版面:也有兩個模塊,一個是瀏覽模塊,一個是管理模塊。其功能模塊列表如表 3-2。表 3-2 版面功能模塊表模塊模塊功能版面瀏覽模塊瀏覽版面版面管理模塊版面管理公共信息:用戶瀏覽公共信息的功能劃分一個模塊,管理員對公共信息的操作劃分為一個模塊,其功能模塊列表如表 3-3。表 3-3 公共信息功能模塊表模塊模塊功能公共信息顯示模塊瀏覽發(fā)布的公共信息13公共信息管理模塊公共信息管理帖子:帖子包括用戶對帖子的操作和管理員對帖子的操作,相應(yīng)地分為帖子模塊和帖子管理模塊,如表 3-4。表 3-4 帖子功能模塊表模塊模塊功能瀏覽帖子發(fā)布/修改/刪除帖子對帖子的特

28、殊操作帖子評價帖子發(fā)布添加多媒體論壇收藏帖子模塊帖子搜索(續(xù)表 3-4)模塊模塊功能刪除帖子帖子管理模塊移動帖子管理員:管理員是對其他對象進(jìn)行操作,如表 3-5。表 3-5 管理員管理功能模塊表模塊模塊功能14用戶管理版面管理管理員管理模塊帖子管理另外,對于用戶使用的模塊稱為前臺模塊,管理員使用的模塊稱為后臺模塊。系統(tǒng)總體功能劃分如圖 3-6。版面瀏覽模塊帖子模塊共公信息管理模塊論壇系統(tǒng)用戶模塊管理員管理模塊前臺后臺公共信息模塊用戶管理模塊版面管理模塊帖子管理模塊圖 3-6 系統(tǒng)功能模塊圖153.2 數(shù)據(jù)庫設(shè)計論壇使用 access 數(shù)據(jù)庫,下面列出是數(shù)據(jù)庫設(shè)計的詳細(xì)。3.2.1 建立數(shù)據(jù)表間

29、的關(guān)系論壇數(shù)據(jù)庫主要有以下幾個表。表 3-7 論壇數(shù)據(jù)表序號字段名字段類型1userdata用戶信息表2bbsboard版面信息表3bbstopic主題信息表4bbsreply帖子信息表5bbsmessage論壇信息表6usergrade用戶等級表7notefriend好友信息表8bbsadmin管理員信息表3.2.2 數(shù)據(jù)表結(jié)構(gòu)的詳細(xì)設(shè)計表 3-8 用戶信息表(userdata)序號字段名字段類型說明1useridint(4)用戶編號2usernamevarchar(50)用戶名163userpasswordvarchar(50)密碼4useremailnvarchar(255)電子郵件5u

30、sertitlenvarchar(255)用戶簽名6usersexvarchar(50)用戶性別7userfacenvarchar(255)頭像8gradenamevarchar(50)積分9addtimedatetime注冊日期10birthdaynvarchar(50)用戶生日11questionnvarchar(50)密碼問題12answernvarchar(50)密碼答案13userlastipnvarchar(40)最后登錄 ip14ishiddenint(4)是否隱身登錄150icqnvarchar(255)用戶 qq (續(xù)表 3-8) 字段類型長度備注16userinfonvar

31、char(255)用戶真實信息17openinfovarchar(50)是否公開基本資料在用戶信息表里保存的是在論壇注冊用戶的信息,用戶編號和用戶名在論壇中是不能重復(fù)的,用戶名不能重復(fù)還使用用戶編號的原因是計算機(jī)對數(shù)字檢索速度更快。表 3-9 版面信息表(bbsboard)序號字段名字段類型說明1boardidint(4)版面編號2bootidint(4)引導(dǎo)標(biāo)識3boardnamevarchar(50)主版面名4childint(4)子版數(shù)量5lasttopictimevarchar(255)最后一個主題時間6addtimedatetime(8)建立日期177boardstatusint(4

32、)版面狀態(tài)8topictableint(4)主題表表 3-10 主題信息表(bbstopic)序號字段類型說明1idint(4)主題編號2titletext主題3bordidint(4)版面編號4replyint(4)主題回復(fù)數(shù)5lastreplyuservarchar(50)最后回復(fù)用戶6lastreplytimedatetime最后回復(fù)時間7replyiddatetime回復(fù) id8islockedint(4)是否鎖定(續(xù)表 3-10)字段類型長度備注9istopint(4)是否置頂10isdeleteint(4)是否刪除表 3-11 帖子信息表(bbsreply)字段類型長度備注1idi

33、nt(4)帖子編號2parentidint(4)回復(fù)帖子編號3boardidint(4)版面編號4usernamevarchar(50)用戶名5userloginipvarchar(100)用戶登錄 ip6topicidint(4)主題編號7titlevarchar(255)主題8addtimedatetime(8)帖子發(fā)表日期9contenttext(16)帖子內(nèi)容1810replyint(4)回復(fù)11lastreplytimedatetime(8)最后回帖時間12votetitleint(4)帖子投票13statvotevarchar(255)投票統(tǒng)計表 3-10 和 3-11 是緊密關(guān)聯(lián)

34、的,論壇主題信息表記載了論壇中主題帖的信息,建立這個表的原因是用戶在瀏覽論壇中的帖子時先應(yīng)看到的是主題列表,如果主題能夠吸引用戶,用戶才會去看其中的內(nèi)容,否則用戶一進(jìn)來就看到帖子內(nèi)容,會使用戶感覺非常的雜亂。這兩個表是通過 id 字段聯(lián)系起來的,parentid 字段是用來針對特定的帖子回復(fù)。接下來幾張表是論壇的其它功能需要的數(shù)據(jù)表。表 3-12 論壇信息表(bbsmessage)字段類型長度備注1messageidint(4)信息編號2boardidvarchar(100)板塊編號3msgtitlevarchar(50)信息標(biāo)題4msgcontenttext(16)信息內(nèi)容5username

35、varchar(50)發(fā)信息用戶名6addtimedatetime(8)發(fā)消息時間表 3-13 用戶等級信息表(usergrade)字段類型長度備注1gradeidint(4)帖子編號2gradenamevarchar(50)用戶等級3minarticleint(4)帖子編號4gradepicvarchar(50)等級標(biāo)識5classidint(4)每個等級的數(shù)量19表 3-14 好友信息表(notefriend)序號字段名字段類型說明1noteidint(4)用戶編號2usernamevarchar(50)用戶名3frinedvarchar(50)好友名4addtimedatetime(8)

36、添加時間表 3-15 管理員信息表(bbsadmin)序號字段名字段類型說明1lastloginipvarchar(100)最后登錄 ip2lastlogintimedatetime(8)最后登錄時間3usernamevarchar(50)用戶名4passwordvarchar(50)密碼5purviewvarchar(225)權(quán)限標(biāo)識20第 4 章 系統(tǒng)詳細(xì)設(shè)計4.1 用戶模塊4.1.1 用戶登錄論壇在前臺實現(xiàn)了用戶登陸系統(tǒng),使用驗證碼,用戶每次登錄時都不一樣,這樣做的目的是為了防止有人利用破解程序,暴力破解用戶的密碼。當(dāng)把用戶名和密碼輸入進(jìn)去,系統(tǒng)會自動和數(shù)據(jù)庫的用戶和密碼進(jìn)行核對,如果一

37、樣就登陸進(jìn)去,如果和原始資料對不上就提示你進(jìn)入注冊頁面進(jìn)行注冊,注冊成功的話會自動把你的用戶名和密碼輸入到后臺數(shù)據(jù)庫里面,下次不用注冊直接登陸就可以了。論壇的登陸系統(tǒng)如圖 4-1 所示:21圖 4-1 用戶登錄界面用戶輸入用戶名和密碼之后通過()登錄按鈕進(jìn)行登錄。當(dāng)成為用戶進(jìn)入論壇時,會顯示用戶的個人資料及功能:修改資料,發(fā)起主題,參與主題,上傳頭像,上傳文件,發(fā)送論壇短信,論壇權(quán)限,論壇收藏,論壇好友。 論壇的個人信息如圖 4-2 所示: 圖 4-2 個人信息界面在基本資料里面可以看到的個人資料并且可以修改,這樣可以使用戶對自己的資料隨時隨地的修改,避免了寫完后不能修改的遺憾。聯(lián)系資料則是提

38、供了電子信箱,oicq 號碼,icq 號碼,msn 帳戶,個人主頁等的聯(lián)系方式,如果要修改,必須要先正確輸入密碼才可以,這樣避免了有些人惡意改動別人的聯(lián)系方式。修改密碼則是發(fā)現(xiàn)自己的密碼被別人知道后,處于安全的考慮提供了讓用戶自己改動密碼的功能。4.1.2 用戶注冊用戶注冊,首先要檢查的就是用戶填寫的信息,其中包括:1.字段是否空白,若空白則不接受。2.輸入的 e-mail 是否正確,若 e-mail 中沒有,符號位于 e-mail 的第22一個字符或者位于 e-mail 的最后一個字符都算錯誤。3.兩次輸入的密碼是否一致。4.用戶名是否被使用。5.電子郵件是否被使用。圖 4-3 用戶注冊頁面

39、程序說明: 通過 isvalidemail(trim(request(useremail)=false 驗證電子郵件地址正確性;通過(select useremail from userdata)lai 來驗證郵箱的唯一性,如果出錯則顯示“對不起,本論壇已經(jīng)限制了一個 email 只能注冊一個帳號,請重新選擇您的 email。 “如果正確則輸恭喜,您所填寫的用戶和email 通過檢測,可以正常注冊!請繼續(xù)將您的注冊信息填寫完整,謝謝。 ”234.1.3 與其他用戶聯(lián)系站內(nèi)用戶通過短消息與其他用戶聯(lián)系。圖 4-4 用戶好友列表頁面可以將站內(nèi)的注冊用戶加為好友,方便查看好友的信息和聯(lián)系。我們還可以

40、將不常聯(lián)系的好友進(jìn)行刪除。通過數(shù)據(jù)庫語句(select * from bbsattach)從 bbsattach 表中提取用戶數(shù)據(jù),發(fā)布到好友列表中。圖 4-5 用戶發(fā)信息頁面24圖 4-6 用戶查看聊天記錄頁面該功能包括了發(fā)短消息,發(fā)件箱和收件箱三部分,發(fā)短消息是向短消息表(usernote)添加記錄,發(fā)件箱和收件箱都是從 usernote 表讀取記錄。標(biāo)記短消息是否已讀是對數(shù)據(jù)表 usernote 中的 flag 字段操作。以上功能雖然不是論壇的必須功能,但是它讓論壇更加人性化,其實現(xiàn)的方法都類似,都是對數(shù)據(jù)庫的讀/寫操作。4.2 帖子模塊 4.2.1 發(fā)布/刪除/修改帖子模塊網(wǎng)絡(luò)技術(shù)的發(fā)

41、展日新月異,現(xiàn)在用戶發(fā)言時使用的格式也是豐富多彩。例如:用戶可以上傳文件,可以粘貼多媒體等。下面是一個帖子的發(fā)布頁面和修改頁面。而對于帖子的刪除只能由管理員來執(zhí)行操作,普通用戶無法刪除。25圖 4-7 帖子發(fā)布頁面要實現(xiàn)帖子內(nèi)容多樣化可以使用 ubb 碼。ubb 碼是 html 的一個變種,是 ultimate bulletin board 采用的一種特殊的 tag。為了避免用戶無意或者有意使用 html 代碼對論壇進(jìn)行攻擊。各種論壇基本上都屏蔽了 html 代碼。但是為了使得論壇更加“多姿多彩” ,論壇也會相應(yīng)地開放一些自定義的 tag標(biāo)簽,類似于 html 中的 tag。這種自定義的 ta

42、g 就是俗稱的 ubb 代碼。可以使用免費的 ubb 編輯器來自動生成 ubb 代碼。26圖 4-8 帖子修改頁面用戶進(jìn)入要修改的帖子的頁面點擊編輯按鈕就會跳轉(zhuǎn)到修改帖子的頁面,當(dāng)用戶將要更改的信息改完之后點擊發(fā)布就完成帖子的修改。4.2.2 帖子瀏覽模塊 圖 4-9 帖子分類頁面27 用戶登陸后自動跳轉(zhuǎn)到論壇首頁,用戶可以找到感興趣的話題進(jìn)入,進(jìn)行帖子的瀏覽。 圖 4-10 帖子瀏覽頁面在進(jìn)入技術(shù)交流區(qū)之后就可以針對相應(yīng)的技術(shù)進(jìn)行交流。 圖 4-11 帖子回復(fù)頁面帖子瀏覽模塊部分最重要的是對數(shù)據(jù)庫的操作,如帖子的分頁列表,首先來看帖子的分頁是如何實現(xiàn)的,下面是幾個和分頁瀏覽有關(guān)的屬性:abs

43、olutepage: 當(dāng) recordset 對象有設(shè)置分頁時,absolutepage 會返回目前的頁碼。28pagecount: 返回 recordset 對象的分頁總數(shù)。pagesize: 當(dāng) recordset 對象有設(shè)置分頁時,pagesize 為每頁的記錄條數(shù)。有了這幾個屬性,在使用 fornext 循環(huán)就可以以分頁的方式顯示帖子了。具體的程序和版面瀏覽模塊相似,這里就不給出程序了。4.2.3 帖子搜索模塊該部分的帖子顯示和瀏覽模塊的帖子顯示基本一致,這里重點討論 asp如何操作 sql 語句,以及 sql 語句是如何工作的。下面先來看下搜索條件。圖 4-12 帖子搜索頁面從上圖可

44、以看出帖子的搜索條件:首先要選擇版面,搜索方式分為標(biāo)題和作者,搜索時間是附加搜索條件。帖子搜索本質(zhì)上是有條件的對數(shù)據(jù)表查找,所以要滿足以上條件的搜索應(yīng)該使用下面的 sql 語句:(select * from bbstopic where &kind& like %&keyword&% and boardid=&boardid& and dateandtime &posttime& order by dateandtime desc)294.2.4 其它功能1.帖子評價圖 4-13 帖子評價頁面對于用戶如果想要吸引他們來到論壇,就需

45、要管理員根據(jù)其內(nèi)容及回帖的信息對每個帖子做一個評價。同時,增加注冊用戶發(fā)帖的積極性,使他們獲得更多的積分和相應(yīng)的等級。2.論壇收藏 圖 4-14 收藏頁面隨著論壇的內(nèi)容逐漸豐富,用戶在論壇中查找信息就會變得越來越困難,特別是對于自己喜歡的內(nèi)容,每次都要去查找,對此我們提供一個收藏夾,用戶可以把自己喜歡的東西收藏起來,方便以后查閱。304.3 管理員模塊4.3.1 用戶管理 圖 4-15 用戶等級權(quán)限設(shè)置頁面用戶等級不同所擁有的稱號和權(quán)力就不一樣,等級越高的用戶所能進(jìn)去的板面越多,用戶可以通過發(fā)帖和回帖等操作積累積分。在用戶等級權(quán)限設(shè)置頁面中,管理員可以編輯用戶的權(quán)限。31 圖 4-16 用戶信

46、息管理頁面管理員對用戶的管理主要包括用戶的批量刪除和用戶授權(quán)。1.用戶的批量刪除實現(xiàn)用戶的批量刪除,與以往的單個刪除不同,主要使用了數(shù)組循環(huán)。2.用戶授權(quán)用戶授權(quán)即管理員添加,將用戶授予版主的權(quán)限首先應(yīng)該判斷用戶是否存在,然后在選擇相應(yīng)的版面來作為該版的版主,具體操作是將版面信息表bbsboard 中的字段更新為指定用戶的用戶名,其代碼與其它寫入數(shù)據(jù)庫的代碼類似。324.3.2 版面管理 圖 4-17 添加版面頁面管理員在這個頁面里面可以增加新的版面,對版面進(jìn)行相關(guān)的解釋,增加新的版主。 圖 4-18 論壇版面用戶權(quán)限設(shè)置33管理員可以對各個板塊的進(jìn)入權(quán)限進(jìn)行設(shè)定,達(dá)不到設(shè)定要求的用戶將無法進(jìn)

47、入其中進(jìn)行交流和學(xué)習(xí)。在這里面我把權(quán)限都設(shè)置成不注冊就可以瀏覽。 圖 4-19 合并論壇數(shù)據(jù)頁面管理員可以將 2 個內(nèi)容比較接近的版面進(jìn)行數(shù)據(jù)合并,這樣用戶就不用再這個版面發(fā)現(xiàn)問題要去另外的版面尋找答案了,給用戶很大的便利。版面管理包括版面的添加,刪除和修改。其具體實現(xiàn)方法均是對父版面信息表和子版面信息表操作。其三者主要不同之處在于 sql 語句的不同,添加版面需要使用 insert,刪除版面需要使用 delete,修改版面需要使用 update。4.3.3 帖子管理管理員對帖子管理包括批量刪除帖子和批量移動帖子。而版主對帖子的管理包括刪除單個帖子,移動單個帖子,置頂帖子,指定精華帖。批量刪除

48、帖子與批量刪除用戶類似。而批量移動帖子不同之處使用下面的 sql 語句:34(update bbstopic set bbsboard=&request(boardid)& where topicid=&i&) 圖 4-20 批量刪除頁面圖 4-21 批量移動頁面刪除的帖子會被轉(zhuǎn)存到回收站之中,在這里管理員可以執(zhí)行徹底刪除操作。通過數(shù)據(jù)庫語句(select case request(action)和 case :delallrecycle())來執(zhí)行操作。帖子的循環(huán)應(yīng)用了 for.next 來實現(xiàn)。 圖 4-22 回收站管理頁面4.3.4 數(shù)據(jù)庫備份和恢復(fù)通過上

49、面的35語句來實現(xiàn)數(shù)據(jù)備份,管理員可以在這里查看當(dāng)前數(shù)據(jù)庫路徑,備份數(shù)據(jù)庫目錄以及備份數(shù)據(jù)庫的名稱。 圖 4-23 數(shù)據(jù)備份通過上面的語句來實現(xiàn)數(shù)據(jù)庫的恢復(fù),管理員在這個頁面可以填寫數(shù)據(jù)庫備份的路徑和目標(biāo)數(shù)據(jù)庫路徑。圖 4-24 數(shù)據(jù)恢復(fù)36結(jié) 論畢業(yè)設(shè)計論壇實現(xiàn)了動態(tài)網(wǎng)站的功能,它不但保存原有靜態(tài)網(wǎng)站的一些優(yōu)點還改進(jìn)了靜態(tài)網(wǎng)站的一些缺陷,比如不易維護(hù)等缺點。該論壇會根據(jù)用戶的要求和選擇而動態(tài)改變和響應(yīng),將瀏覽器作為客戶端界面,這將是今后 web發(fā)展的大勢所趨。在制作該論壇時,把論壇的設(shè)計分為了前臺界面的設(shè)計和后臺數(shù)據(jù)庫的建立。在前臺界面的設(shè)計時,遵從了傳統(tǒng)的網(wǎng)頁界面設(shè)計,并且添加了不同的背景

50、風(fēng)格來適應(yīng)不同用戶的需求,爭取做到簡明明了,讓用戶一眼看上去就有比較清爽的感覺,讓其瀏覽網(wǎng)頁時心情舒暢。在后臺的數(shù)據(jù)庫建立中,我較傳統(tǒng)的論壇增添了幾個數(shù)據(jù)庫來增加前臺的功能,37對后臺的數(shù)據(jù)庫我也做到簡明明了,便于自己的管理與操作。雖然說論壇是做完了,但還有許多要改進(jìn)的地方,比如:增加各版塊的功能,是用戶用起來得心應(yīng)手,還有就是對后臺數(shù)據(jù)庫的維護(hù),提高對用戶的私人信息的保護(hù),防止他人密碼丟失及對數(shù)據(jù)處理的失誤率減到最小。不過在制作該論壇的過程中,還有許多沒有解決的問題。比如:怎么樣使用戶進(jìn)行私聊,屏蔽一些不文明的用語等等。在以后工作學(xué)習(xí)當(dāng)中,我將會繼續(xù)研究并解決此類問題。致 謝感謝田淑梅老師的

51、熱情關(guān)心和指導(dǎo),田淑梅老師淵博的知識和嚴(yán)謹(jǐn)?shù)闹螌W(xué)作風(fēng)使我受益匪淺,對順利完成本課題起到了極大的作用。在此向她表示我最衷心的感謝!在論文完成過程中,本人還得到了畢業(yè)設(shè)計小組同學(xué)的熱心幫助,本人向他們表示深深的謝意!最后向在百忙之中評審本文的各位專家、老師表示衷心的感謝!38參考文獻(xiàn)參考文獻(xiàn)1 丁曉萍. 基于 asp 技術(shù) bbs 系統(tǒng)設(shè)計方案探討j. 河北能源職業(yè)技術(shù)學(xué)院學(xué)報,2011.2 吳萱. 基于 asp 技術(shù)的 access 數(shù)據(jù)庫安全隱患及其對策j.紹興文理學(xué)院學(xué)報(自然科學(xué)版),2002.3 朱烈鋒. 基于 asp 技術(shù)的紹興天彩網(wǎng)站的設(shè)計j.紹興文理學(xué)院學(xué)報(自然科學(xué)版),2003

52、.4 張波. 淺談 asp 技術(shù)在動態(tài)網(wǎng)頁設(shè)計中的應(yīng)用j.中國新通信,2010.5 陳瑞. 談 iis 下基于 asp 技術(shù)和 access 數(shù)據(jù)庫網(wǎng)站的安全性j.山西廣播電視大學(xué)學(xué)報,2010.6 何倩. 基于 asp 技術(shù)的校園網(wǎng)站后臺管理系統(tǒng)及其安全性j. 湖南工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報,2010.7 許皓月. 基于 asp 技術(shù)開發(fā)的網(wǎng)站安全防護(hù)分析j.農(nóng)業(yè)圖書情報學(xué)刊,2009.8 張領(lǐng).asp 實例指南與高級應(yīng)用m.中國鐵道出版社,2008.9 呂純潔.基于 asp 技術(shù)的課程學(xué)習(xí)網(wǎng)站的開發(fā)j.開封大學(xué)學(xué)報,2009.3910 王志潔.淺析 asp 技術(shù)下 web 數(shù)據(jù)庫的實現(xiàn)j,電腦知

53、識與技術(shù),2009.11 龍怡瑄; 王曉晨. asp 技術(shù)在用戶登錄中的應(yīng)用j,電腦知識與技術(shù),2006.12 羅淑嫻. 基于 asp 技術(shù)的信息發(fā)布系統(tǒng)的設(shè)計和實現(xiàn)j,農(nóng)業(yè)圖書情報學(xué)刊,2006.13 向?qū)W哲.asp 程序設(shè)計教程m,人民郵電出版社,200614 張建軍. asp 記錄集分頁瀏覽方法j北京工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報, 2005.15 mani subramanian.network management principles and practive. higher education press,2005.4041附錄 設(shè)計系統(tǒng)部分源代碼連接數(shù)據(jù)庫源代碼主頁源代碼%snow.no

54、wstats=論壇首頁42snow.head()snow.online()template.gethtml(index)response.write userlogindate()response.write boardlist()response.write useronline()if clng(snow.forumoption(7)=0 then是否開放友情連接 response.write friendlink()end ifresponse.write replace(template.html(6),$userskinpath,template.userskinpath)snow.

55、footer()function userlogindate() dim tempstr,strimg if snow.founduser then tempstr=template.html(1)strimg=90)this.width=90;this.height=90tempstr=replace(tempstr,$userface,strimg)tempstr=replace(tempstr,$mynote,session(userinfo)(20)tempstr=replace(tempstr,$username,snow.username) else tempstr=templat

56、e.html(2) end if tempstr=replace(template.html(0),$userloginistrue,tempstr) tempstr=replace(tempstr,$membercount,snow.membertotal) tempstr=replace(tempstr,$newusername,snow.newmember) tempstr=replace(tempstr,$yesterdaytopic,snow.yesterdaytopic) tempstr=replace(tempstr,$todaytopic,snow.todaytopic)43

57、tempstr=replace(tempstr,$totaltopic,snow.totaltopic) tempstr=replace(tempstr,$totalreply,snow.totalreply) tempstr=replace(tempstr,$topposttopic,snow.topposttopic) tempstr=replace(tempstr,$toponlinecount,snow.toponlinecount) userlogindate=tempstrend functionfunction boardlist() dim rs,tempstr,boardst

58、r,i,cachestr,getstr,arrstr,endstr,managestr,bistr,bspic *帶綬存的主區(qū)數(shù)據(jù)* cache.name=boardlist if cache.objisempty() thenset rs=snow.execute(select boardid,parentid,boardname,child,depict,boardimg,topictotal,replytotal,managename,lasttopicname,lasttopic,lasttopictime,boardstatus,todaytopic,bootid from bbsb

59、oard order by bootid asc,parentid asc,boardid asc)searchnum=searchnum+1if rs.bof or rs.eof then rs.close:set rs=nothing exit functionelse boardstr=rs.getrows(-1)rs.close:set rs=nothingcache.value=boardstrend if end if cachestr=cache.value #開始分區(qū)# arrstr=split(template.html(3),) for i=0 to ubound(cach

60、estr,2)44 endstr= if i0 then if cachestr(1,i)=0 or i=ubound(cachestr,2) then endstr=trim(arrstr(2)end if end if if cachestr(1,i)=0 then tempstr=endstr&replace(trim(arrstr(0),$boardname,cachestr(2,i) else tempstr=trim(arrstr(1)&endstrtempstr=replace(tempstr,$boardid,cachestr(0,i)tempstr=replace(tempstr,$childboardname, &cachestr(2,i)& )tempstr=replace(tempstr,$depict,cache

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論