學生論壇的設計與實現_第1頁
學生論壇的設計與實現_第2頁
學生論壇的設計與實現_第3頁
學生論壇的設計與實現_第4頁
學生論壇的設計與實現_第5頁
已閱讀5頁,還剩58頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、畢 業 設 計( 論 文 ).畢業論文(設計)asp論壇的設計與實現姓 名褚順鴻學 號4200909320009年 級09級春季專 業計算機科學與技術系(院)華中科技大學遠程與繼續教育學院指導教師龐秀梅2011年2月28日1畢 業 設 計( 論 文 ).摘 要論壇也稱為bbs,bbs是bulletin board system的縮寫,意思是電子公告版,一種在internet上常見的用于信息服務的web系統,它的主要服務是用來幫助瀏覽者相互溝通、吸引用戶、服務用戶的。他起源于20世紀80年代初,最初只是用于發布公告信息和討論問題的在線交流平臺,后來隨技術的發展與網絡的普及功能越來越強大。由于得到

2、了廣大網友的歡迎,越來越多的商業網站開始重視論壇,把論壇作為與用戶交流的平臺和在線技術支持與服務的平臺。本文主要采取asp為開發技術,并使用了一些vbscript語言來實現論壇基本功能。為了簡化架設的實現,采取microsoft公司的access作為數據庫平臺,這樣在單機上架設一個簡單的論壇幾乎不需要安裝任何程序。本文設計的流程是從系統的需求分析開始,確定系統的流程與設計,到模塊的劃分,再到數據加結構的設計,最后開始每個模塊的編程與開發?!娟P鍵字】: bbs, 論壇, 貼子,aspabstractthe forum is also known as bbs, bbs is an acronym

3、 for bulletin board system, which means the electronic version of the bulletin, on the internet in a common web services for information systems, its main service is to help visitors communicate with each other to attract users of the service users. he originated in the early 1980's, initially a

4、nnounced for the information and discuss issues on-line exchange platform, along with the technology and the popularization of networks more and more powerful features. as a result has been welcomed by the majority of users, an increasing number of commercial sites paying attention to the forum, the

5、 forum as a platform for exchanges with users and online technical support and services platform. this article taken for the development of asp technology, and used some of the vbscript language to achieve the basic functions of the forum. in order to simplify the realization of the set to take micr

6、osoft's access database as a platform for such a stand-alone in the forum to set up a simple almost do not need to install any program. in this paper, the design process from the beginning of systems analysis to determine the processes and systems design, divided into modules, to increase the da

7、ta structure design, the beginning of the end of each module of programming and development. keywords: bbs, a forum post,asp58畢 業 設 計( 論 文 ).目 錄摘要.abstract.第一章系統功能設計.11.1 引言11.2 需求分析.11.3 功能設計.31.4 擴展功能設計.6第二章系統架構與數據庫設計.82.1 功能模塊的劃分.82.2 數據庫設計.112.2.1 需要建立的數據表112.2.3 數據庫表結構的詳細設計12第三章 基本設計.263.1 論壇首頁

8、設計.263.2 數據庫連接函數.28第四章模塊的實現304.1 用戶模塊.304.1.1 用戶的登陸304.1.2 用戶的注冊324.1.3 瀏覽其他用戶信息364.2 版面與公共信息模塊.374.2.1 版面瀏覽374.2.2 公共信息模塊384.3 帖子模塊394.3.1 發布、修改、刪除帖子394.3.2 帖子瀏覽模塊424.3.3 帖子搜索模塊454.4 管理人員模塊484.4.2 用戶授權494.4.3 數據庫的備份與還原49第五章 論壇的架構.515.1 安裝環境和參數設置.515.2 運行論壇.53第六章 分析評價.55致謝.56參考文獻.57第一章系統功能設計1.1 引言隨著

9、網絡的越來越普及,人們越來越關于這樣一種交流平臺論壇。很多商業網站都開設自己論壇來提供交流和服務,也有很多的個人網站和個人論壇的出現,論壇已經不光是一種交流平臺,甚至是成為了實現自我價值的一個舞臺。正因為論壇越來越重要,所以論壇的維護也變成了一種職業,而更好的維護則需要從設計這個層面來了解和進行。在論壇里大家最熟悉的就是用戶瀏覽論壇中已有的內容,針對別人的主題展開討論,也可以發表自己的觀點供大家品評。同時為了防止用戶發布一些不健康不合法的內容,需要有管理人員來對這些內容進行刪除、修改。而且用戶想在論壇發布信息則要求他注冊,這樣來控制用戶發布信息和方便管理者操作用戶的信息。論壇也要有多個版面和分

10、區,用來區分各種帖子的內容范疇,方便整理和管理。所以論壇的基本功能就是要實現用戶的數據庫管理和帖子的數據庫管理,以及怎么樣讓這些數據庫和網頁的操作聯系起來。1.2 需求分析要設計一個一個論壇,首先要分析論壇里需要那些內容,以及各種內容之間的關系。首先列出論壇常用的名詞:用戶、版面、公共信息、帖子、主題、積分、稱號、版主、注冊信息、管理員、系統參數。對于以上名詞可以精簡。主題是帖子的一個特例、積分和稱號是用戶的一個屬性、版主是增加了權限的用戶,注冊信息是用戶的具體屬性。所以具體的對象有:用戶、版面、公共信息、帖子、管理員、系統參數。具體的操作包括:管理員對用戶、帖子、版塊的管理;客人和用戶的對版

11、塊、帖子的瀏覽;客人的注冊;用戶的發帖、回帖、搜索等操作。把具體的對象和具體的操作相聯系,我們可以歸結出論壇基本操作的流程圖,如圖1-1。瀏覽帖子回帖瀏覽版塊搜索客人注冊登陸用戶發帖管理用戶管理帖子管理版塊管 理 員圖1-1 論壇基本功能流程圖圖1-1中個將具體的對象和操作直觀的表達了出來,為了更具體的細化對象和操作的關聯,用來劃分開發的模塊,我們將對象與對象之間的關聯可以建立出一張表,對象如表1-1。表1-1 各對象間的關聯表用戶版面公共信息帖子管理人員系統參數用戶注冊修改瀏覽聯系瀏覽瀏覽發布瀏覽發布修改刪除特殊操作×版面××××公共信息&#

12、215;×××帖子××××管理人員刪除授權添加刪除修改添加刪除修改添加刪除修改×設置系統參數×××××表1-1中的對象是單向關聯,是指左側對象對上方對象的活動。×表示沒有關聯,表示存在單向關聯。通過以上設計,論壇需要些什么以及所需要的對象之間存在著怎么的關系就有了基本的概念。1.3 功能設計表1-1中用戶關聯的對象是自身、版面、公共信息、帖子。分別根據用戶與這些對象的聯系給出一個明確的菜單,如表1-2。表1-2 用戶功能列表功能名稱說明用戶注冊用戶在論壇填

13、寫必要信息后就可以注冊為注冊用戶,并能在登陸后對注冊信息進行更改用戶登陸注冊后的用戶可利用用戶名和密碼在論壇登陸瀏覽其他用戶信息用戶注冊后可以查看其他用戶的公開信息與其他用戶聯系可以在論壇內給其他用戶私下留言,或直接發送郵件等瀏覽版面用戶可以看到以列表形式展現的版面信息和版面說明瀏覽發布公共信息未登陸的用戶可以瀏覽公共信息,登陸后可以發布允許范圍內的公共信息瀏覽帖子用戶可以以列表形式瀏覽帖子主題及其全部內容發布修改刪除帖子用戶在登陸后可以發布帖子、修改自己的帖子,被給予版主權限后還可以編輯、修改、刪除權限范圍內的其他用戶帖子對帖子特殊操作主要針對版主權限用戶,對帖子進行置頂、加精華等特殊操作,

14、是帖子主題不同于其他主題版面、公共信息、帖子都沒有和其他對象的關聯,都屬于被動的對象,是被其他對象所操作的,因此針對它們的功能主要是有其他對象產生。版面和帖子是有一定關系的,可以看作是對帖子內容的歸類,類似文件夾與文件的關系,有時候可以認為版面是帖子的一個屬性。對于管理員的功能,應該認為管理員是論壇的特殊群體,工作是設置論壇參數規則和維護論壇的正常運轉。管理員可以和所有對象產生關聯,所以其功能設定也很豐富,如表1-3。表1-3 管理員功能列表功能名稱說明用戶刪除對于一些蓄意破壞的用戶,刪除其身份,不允許其存在用戶權限對于一個具有管理能力的用戶給予一些特殊的權限,讓他們在權限范圍內幫助管理和維護

15、論壇版面管理版面是論壇的枝干,要設定論壇需要的合適版面,讓論壇的功能更明細,分類更規范,方便大家的瀏覽公共信息管理公共信息是向用戶展現論壇狀態的部分,由于信息的普遍性,其刪除和修改權限需要由管理人員來完成帖子管理帖子是論壇的葉子,是基本數據庫,反映了論壇使用者和管理者的水平,所以需要管理人員的全權管理來規范其內容設置系統參數系統參數包含的內容很多,直接關系到論壇的正常運行,包括網址在內的各種參數全部要由管理人員統一設置和變更對于管理員和用戶功能關系可以細化成以下幾個相關用例圖。論壇設置參數,可以把設置一組參數作為一個方法,也可以把設置一個參數作為一個方法,如圖1-2。管理員設置論壇參數論壇分頁

16、參數基本參數用戶相關參數圖1-2 論壇對象的相關用例圖各個版塊有瀏覽列表和管理兩個操作,管理方法又包括了創建、修改和刪除這3個子方法,如圖1-3。管理員管理版塊創建版塊修改版塊刪除版塊用戶瀏覽列表圖1-3 版塊對象的相關用例圖帖子有瀏覽、發帖、回帖、搜索和管理5種方法,瀏覽方法又可以分列表和查看2個子方法,管理方法又可分編輯、刪除、置頂、轉移、加精華5個子方法,如圖1-4。管理員用戶管理帖子刪除轉移置頂加精華編輯發帖回帖搜索瀏覽圖1-4 帖子對象的相關用例圖用戶類有注冊、登陸和管理3個方法,管理方法又分為添加、刪除、設置權限3個子方法,如圖1-5。管理員用戶管理用戶刪除添加設置權限發帖回帖瀏覽

17、圖1-5 用戶對象的相關用例圖這樣,表1-2和1-3就分別有了各自的歸屬對象。論壇一般存在兩種用戶:注冊用戶和管理員。用戶的權限是向下覆蓋的,即上級權限包含下級權限。這樣論壇的基本功能就可以從各種需求中篩選出來了,即發帖、瀏覽帖子、回帖?;竟δ芫褪菢嫵烧搲到y的必要功能,具備這些功能的web系統即是論壇。1.4 擴展功能設計具備了發帖、瀏覽帖子、回帖的web系統就構成論壇了,但是這樣的論壇很簡單,沒有吸引力,用戶使用起來也不會很舒服,無論是作為商業還是個人論壇都是沒有競爭力的。所以需要為其添加一些更人性化的功能使內容更豐富。用表格形式列出可能的擴展功能,如表1-4。表1-4 擴展功能列表功能

18、名稱說明用戶控制自己的信息用戶可控制自己的信息是否公開用戶登陸添加驗證碼登陸時需輸入驗證碼,如登陸信息錯誤則重新生成驗證碼。這樣可以防止一些軟件偷取用戶名和密碼站內短信讓兩個用戶能在論壇內更方便的交流帖子評價給予用戶對一個帖子評價好壞的功能帖子發布添加多媒體如可在帖子內使用表情圖片、插入flash、音樂等功能帖子類別多樣化讓用戶可以發起投票、買賣等功能的帖子帖子收藏在論壇中加入搜索但效率卻不一定很高,對于好的帖子為了方便用戶以后更方便找到這個帖子,可以讓用戶收藏帖子用戶等級建立一個榮譽體系,對于對論壇貢獻大的用戶給予一定的榮譽稱號或者高的論壇等級論壇情況顯示讓用戶直接看到一些論壇統計數據,如主

19、題總數、在線人員等數據備份論壇最重要的就是數據庫,但數據庫系統的安全并不是100%的,所以為了論壇能持續發展,需要定期對論壇數據庫進行備份非法言論過濾對于一些非法言論或不良詞匯可以在論壇進行過濾設置,一旦有人使用也會被過濾掉而不至于造成不良影響非法ip限制對于一個蓄意搗蛋的用戶,限制他的ip不能訪問論壇,但這個有很大的局限性,一般情況下用處不會很大添加了以上功能,論壇就顯得更具有親和力了,而且也更具有實用性。第二章系統架構與數據庫設計2.1 功能模塊的劃分模塊的劃分主要是按每一個對象的操作來歸類。論壇操作的對象在第一章里歸納為用戶、版面、公共信息、帖子、管理員、系統參數這6個對象,所以就要針對

20、這6個對象劃分功能模塊。(1) 用戶:有兩個模塊,一個是用戶注冊、登陸、修改信息等功能組合,是用戶對自身的操作;另一個是管理人員對用戶進行刪除、授權的操作;如表2-1。表2-1 用戶功能模塊列表模塊模塊包含的功能用戶模塊用戶注冊用戶登陸瀏覽其他用戶信息與其他用戶聯系用戶控制自己的信息用戶登陸添加驗證碼用戶等級管理人員模塊用戶刪除用戶授權(2) 版面:有兩個模塊,一個是瀏覽模塊,一個是管理模塊。如表2-2。表2-2 版塊功能模塊列表模塊模塊包含的功能版面瀏覽模塊瀏覽版面版面管理模塊版面管理(3) 公共信息:將用戶發布和瀏覽公共信息的功能劃分為一個模塊,對象是用戶對公共信息的操作;管理員對公共信息

21、的操作劃分為另一個模塊。如表2-3。表2-3 公共信息功能模塊列表模塊模塊包含的功能公共信息顯示模塊瀏覽、發布公共信息公共信息管理模塊公共信息管理(4) 帖子:帖子是論壇的基本,其功能是最多最復雜的,但仍然可以分為兩個模塊,根據操作對象來區分。如表2-4。表2-4 帖子功能模塊列表模塊模塊包含的功能帖子模塊瀏覽帖子發布、修改、刪除帖子對帖子特殊操作帖子評價帖子發布增加多媒體帖子類別多樣化帖子移動(單個)帖子收藏帖子搜索帖子管理模塊帖子管理帖子移動(批量)(5) 管理員:管理員主要是對其他對象進行操作,是對其他模塊的操作人員,同時系統參數設置模塊的功能也可以劃分進來。如表2-5。表2-5 管理員

22、管理功能模塊列表模塊模塊包含的功能管理員管理模塊設置系統參數數據備份非法言論過濾非法ip限制通過以上分析,論壇的模塊劃分也就完成了。但如果要把整個論壇系統完整的架構出來,還要分析模塊與模塊之間的關系,把零散的功能模塊用一條主線串聯起來。對于論壇系統來說,聯系各個模塊的主線是使用者的權限,用戶能使用論壇的哪些功能是由用戶的權限決定的,論壇的每個功能都與相應的權限對應。同一類用戶使用的功能模塊。是以使用者為中心連接起來的。另外,操作同一類事物的功能模塊,也是相互關系的。瀏覽模塊與發帖回帖模塊、管理帖子模塊關聯,是由論壇的系統流程決定的;管理版塊模塊與瀏覽模塊關聯,是有帖子與版塊的父子關系決定的,帖

23、子依附與版塊,先有版塊后有帖子,帖子必須發表在某個版塊中;管理用戶模塊與注冊登陸模塊關聯,是由同一類對象用戶決定的,注冊后獲得論壇的身份,成為用戶,所有的用戶需要接受管理員的管理,用戶登陸證明自己在論壇中的身份。分析了這些關系,我們可以得到論壇系統的整體架構,如圖2-1。管理員管理用戶管理版塊管理帖子用戶選擇版塊瀏覽帖子注冊登陸發帖回帖搜索圖2-1 論壇整體架構圖對于用戶使用的模塊成為前臺模塊,管理員使用的模塊稱為后臺模塊。其劃分如圖2-2。論壇系統論壇系統論壇系統用戶模塊版面瀏覽模塊公共信息顯示模塊帖子模塊用戶管理模塊版面管理模塊公共信息管理模塊帖子管理模塊管理人員管理模塊圖2-2功能模塊劃

24、分2.2 數據庫設計論壇系統信息的儲存一般是在文件或者數據庫中,相比之下數據庫要簡單高效,能對論壇進行更好的控制,也能對資料提供一些嚴正和保護。所以目前流行的論壇都是使用的數據庫系統。使用數據庫的首先就是要設計數據庫的表結構,一個設計良好的數據庫結構可以提高效率、方便維護,而且對于可能的擴充也會留有余地。2.2.1 需要建立的數據表為了更方便操作和維護,建立的數據表名都使用相關含義的因為單詞,為了區別于數據庫中可能出現的其他非表內容,在給每個表名加上一個標識。根據對論壇功能的分析,可以建立16個數據表,如表2-6。表2-6 論壇數據表序號表名說明1admin_t管理員信息表2bbs1_1帖子信

25、息表3bbsnews_1公共信息表4board_t版面信息表5bookmark_t收藏夾信息表6friend_t用戶好友列表7help_t幫助信息表8log_t論壇日志表9message_t短消息信息表10online_t在線用戶表11setup_t系統信息表12topic_t論壇主題信息表13upfile_t文件上傳表14user_t用戶信息表15vote_t投票信息表16voteuser_t投票用戶表有些表是可以獨立的,但大多數表都是存在關聯的。其關聯一般都是通過主線用戶相關聯,或者是用戶id,或者是用戶的其他信息。所以也可以看到主線用戶的列表是相關數據項目最多的。2.2.3 數據庫表結構

26、的詳細設計首先是用戶信息表,用戶信息是相關信息最多的表。如表2-7。表2-7 用戶信息表(user_t)序 號字 段 名字段類型說 明備 注1 userid counter用戶編號key2 username varchar(50) 用戶名not null3 userpasswordvarchar(20) 密碼not null4 useremail varchar(255) 電子郵件not null5 userpost integer 發帖數6 usertopic integer 發布主題數7 usersign varchar(255) 用戶簽名8 usersex byte 性別9 userfa

27、ce varchar(255) 頭像10 userwidth integer 頭像寬11 userheight integer 頭像高12 joindate datetime 注冊時間not null13 lastlogin datetime 最后登陸時間14 userlogins integer 登陸次數not null15 userviews integer 信息被瀏覽次數16 userclass varchar(20) 用戶級別17 userwealth integer 現金貨幣18 userepinteger 經驗值19 usercp integer 魅力值20 userpowerin

28、teger 威望值21 userdel integer 被刪主題數22 userisbest integer 精華帖子23 usertitle varchar(50) 頭銜24 userbirthday varchar(50) 生日續表2-7序 號字 段 名字段類型說 明備 注25 userquestion varchar(50) 密碼問題not null26 useranswer varchar(50) 密碼答案not null27 userlastipvarchar(30) 最后登陸ip28 userphoto varchar(255) 用戶照片29 userfav varchar(255

29、) 用戶好友分組30 userinfo longchar 用戶其他信息31 usersetting varchar(255) 用戶設置32 titlepic varchar(50) 標題圖片33 userhidden byte 是否隱身not null34 usermsg varchar(30) 用戶消息35 usertaday varchar(250) 今日信息在用戶信息表里保存的是所有在論壇注冊的用戶的信息,用戶編號是用戶在論壇中的唯一標識。其實用戶名也是不可重復的,但是使用編號作為主鍵可以讓查找起來更加方便,提高效率,而且編號也是與其他表關聯的主要字段。密碼和密碼答案是在用戶忘記密碼時驗

30、證身份的保證,所以設置為不能為空。用戶名和密碼是登陸的唯一識別,郵件是為了方便聯系和某些可能的服務需要,所以也設置為非空。表2-8是論壇中的版面信息表。表2-8 版面信息表(board_t)序 號字 段 名字段類型說 明備 注1 boardid integer版面編號key2 boardtype varchar(50) 版面名稱3 parentidinteger 上級版面編號default 04 parentstr varchar(250) 上級版面名稱5 depth smallint 版面層數6 rootid integer 主版面編號7 child integer 子版面編號8 order

31、s integer 顯示順序續表2-8序 號字 段 名字段類型說 明備 注9 readme varchar(255)介紹10 boardmaster varchar(100) 版主11 postnuminteger 發帖數量12 topicnum integer 主題數量13 indeximg varchar(255) 論壇圖象14 tadaynum integer 今日發帖數15 boarduser varchar(255) 狀態16 lastpost longchar 最后一帖17 sid integer 簽名標識18 board_setting longchar 版面設置19 board

32、_user varchar(250) 版面用戶20 boardtopstrvarchar(255) 置頂主題信息版面信息表中依然是使用了版面編號做主鍵,一般都會用編號作為主鍵,這樣效率要更高些。上級版面編號是為了方便分層次找到各級版面。發帖數量、主題數量是指本版面的所有發帖數量和主題數量,而上級版面的數量是包括下級版面的所有發帖數量和主題數量的,今日發帖數和最后一帖的規則也相同。版面置頂主題信息所包含的是該版面置頂的主題的編號。與版面相關最密切的是帖子和主題,表2-9是論壇的主題信息表。表2-9 論壇主題信息表(topic_t)序 號字 段 名字段類型說 明備 注1 topicid count

33、er主題編號key2 title varchar(250) 標題not null3 boardidinteger 版面編號4 pollid integer 投票表編號5 locktopic integer 是否鎖定6 child integer 回復數量7 postusername varchar(50) 發帖用戶名8 postuserid integer 發帖用戶編號續表2-9序 號字 段 名字段類型說 明備 注9 dateandtime datetime發帖時間10 hits integer 點擊數11 expressionvarchar(20) 狀態12 votetotal intege

34、r 投票總數13 lastpost varchar(250) 最后一帖14 posttable varchar(8) 發帖內容表15 istop byte 是否置頂16 lastposttime datetime 最后發帖時間17 isbest byte 是否精華18 isvote byte 是否投票19 topicmode byte 主題模式20 modeinteger 模式表2-10是帖子信息表。表2-10 帖子信息表(bbs1_t)序 號字 段 名字段類型說 明備 注1 announceid counter帖子編號key2 parentid integer 上級帖子編號not null3

35、 boardidinteger 版面編號not null4 username varchar(50) 發帖用戶名not null5 postuserid integer 用戶idnot null6 topic varchar(255) 標題7 body longchar 帖子內容8 dateandtime datetime 發帖時間9 lengh integer 內容長度10 rootid integer 主題編號11 layer integer 層數12 orderinteger 排序號續表2-10序 號字 段 名字段類型說 明備 注13 isbest byte是否精華14 ip varch

36、ar(40) 發帖用戶ip15 expressionvarchar(255) 狀態16 locktopic integer 主題鎖定狀態17 signflag byte 簽名標識18 emailflag byte 電子郵件標識19 isagree varchar(250) 評價20 isuoload byte 是否有附件21 isaudit byte 是否有音頻22 postbuyuser longchar 購買此帖的人23 ubblist varchar(250)ubb標識使用編號表2-11是投票信息表。表2-11 投票信息表(vote_t)序 號字 段 名字段類型說 明備 注1 votei

37、d counter投票編號key2 vote longchar 投票內容3 votenumlongchar 每項投票的數量4 votetype integer 投票類型5 lockvote integer 鎖定投票6 votes integer 投票人數7 timeout datetime 截止時間8 uarticle integer 用戶文章9 uwealth integer 現金貨幣10 uep integer 經驗值11 ucp integer 魅力值12 upowerinteger 威望值表2-12是投票用戶表。表2-12 投票用戶表(voteuser_t)序 號字 段 名字段類型說

38、明備 注1 id counter編號key2 voteid integer 投票編號3 useridinteger 用戶編號4 votedate datetime 投票日期5 voteoption varchar(50) 投票選項以上4個表是緊密關聯的。為什么單獨建立主題信息表而不把主題當成帖子的特例來篩選,是因為主題會有很多回復,而在論壇帖子搜索時如果搜索要過濾一次帖子將會速度很慢,而且用戶瀏覽主題時也不必要看到帖子的全部內容。表2-9里用到了4個外鍵,如果在其他表中該字段沒有的數據,在主題信息表中也是不能有的。發帖用戶名和發帖用戶編號來源于用戶信息表,可以算是數據冗余,是在查詢用戶發帖時具

39、有更高的效率。表2-10也包含了4個外鍵,其中主題編號是用來關聯主題信息表的。層數記錄的是該帖子是主帖還是從帖,排序數是對同一層次的帖子進行排序的。簽名標識和電子郵件標識是記錄用戶是否在此帖中開放自己的簽名和電子郵件。表2-11記錄了投票類帖子的投票部分的內容。由于投票內容和帖子信息不一樣,所以單獨建立一張表。后面幾個u開頭的字段是限制字段,可以對于投票的用戶做一些資格上的限制,防止新用戶反復注冊投票。表2-12記載了沒個投票用戶的投票情況。投票編號和用戶編號都是外鍵。投票選項字段和表2-11中的投票內容字段想關聯。接著設計管理員信息表,如表2-13,記載了管理員的信息。表2-13 管理員信息

40、表(admin_t)序 號字 段 名字段類型說 明備 注1 id counter管理員編號key2 username varchar(50) 用戶名3 passwordvarchar(50) 用戶密碼4 flag memo 權限字段5 lastlogin datetime 投最后登陸時間續表2-13序 號字 段 名字段類型說 明備 注6 lastloginip varchar(50)最后登陸ip地址key7 adduser varchar(50) 用戶信息表中的用戶名管理員信息表和用戶信息表是有關聯的,外鍵是用戶信息表里的用戶名,所以論壇的管理人員也是論壇的注冊用戶。這樣可以讓管理人員在修改論

41、壇參數后可以很直觀的看到修改后的狀態。公共信息表記載的是論壇中發布的公共信息,與版面等信息是關聯的。如表2-14。表2-14 公共信息表(bbsnews_t)序 號字 段 名字段類型說 明備 注1 id counter編號key2 boardid integer 版面編號3 titlevarchar(50) 標題4 content longchar 內容5 username varchar(50) 發布用戶名6 addtime datetime 發布時間7 bgs varchar(100) 背景音樂表2-14中版面編號和發布用戶名是外鍵,但版面編號可以為0,表示是在論壇首頁發布的信息。背景音樂

42、是讓大家讀枯燥的公告時有親切感,不至于覺得無聊。收藏夾信息表是針對用戶的一個信息表,如表2-15。表2-15 收藏夾信息表(bookmark_t)序 號字 段 名字段類型說 明備 注1 id counter編號key2 username varchar(50) 用戶名3 urlvarchar(100) 收藏的網頁地址4 topic varchar(100) 帖子的主題5 addtime datetime 添加時間收藏夾是為了給用戶帶來方便的,這里收藏的是網頁的地址,其實也可以做成收藏主題的編號,但因為可能收藏版面等容易編號混亂。短消息信息表記錄用戶之間的短消息,見表2-16。表2-16 短消息

43、信息表(message_t)序 號字 段 名字段類型說 明備 注1 id counter編號key2 sender varchar(50) 發送者3 inceptvarchar(50) 接受者4 title varchar(100) 標題5 content longchar 內容6 flag integer 閱讀標記7 sendtime datetime 發送時間8 delr integer 接受者刪除標識9 dels integer 發送者刪除標識10 issend integer 已發送標識短消息是用戶之間私下交流的內容,所以必須保留兩者之間的信息。發送和接收者都是用戶信息表關聯的外鍵。刪

44、除標識設置兩個是防止一方刪除操作后另一方看不到的情況。用戶的好友信息表見表2-17。表2-17 用戶好友列表(friend_t)序 號字 段 名字段類型說 明備 注1 f_id counter好友編號key2 f_username varchar(50) 用戶名3 f_friendvarchar(50) 好友用戶名4 f_addtime datetime 添加時間5 f_mod byte 好友類型6 f_userid integer 用戶編號用戶好友列表是用戶用來相互交流的,是論壇感覺更人性化。記錄好友用戶名是因為用戶往往記得這個好友名字卻不記得編號,所以這里用用戶名做記錄而不是編號。在線用戶

45、表是顯示即時在先的用戶,可以方便用戶見看到在線情況而更及時的交流。如表2-18。表2-18 在線用戶表(online_t)序 號字 段 名字段類型說 明備 注1 id double編號key2 username varchar(50) 用戶名3 userclassvarchar(20) 用戶類型4 stats varchar(250) 用戶狀態5 ip varchar(40) 當前ip6 actforip varchar(40) ip來源7 startime datetime 開始時間8 lastimebk datetime 最后操作時間9 boardid integer 版面編號10 bro

46、wser varchar(250) 瀏覽器類型11 actcome varchar(50) 來源12 userid integer 用戶編號13 userhidden integer 是否隱身這里的主鍵是double類型,是因為用戶的活動很多,數據量存在溢出的可能。用戶名、編號和類型都是來自用戶信息表的外鍵。瀏覽器類型記錄了瀏覽器和操作系統的類型。文件上傳表是帖子表的一個附表,它記錄了在帖子中的附件等信息,見表2-19。表2-19 用戶信息表(user_t)序 號字 段 名字段類型說 明備 注1 f_id counter編號key2 f_announceid varchar(50) 帖子編號3 f_boardidinteger 版面編號4 f_userid integer 用戶編號5 f_username varchar(50) 用戶名6 f_filename varchar(250) 文件名7 f_filetype varchar(10) 文件類型8 f_type smallint 文件類型編號續表2-19序 號字 段 名字段類型說 明備 注9 f_filesize integer文件大小10 f_readme varchar(250) 文件說明11 f_downloadinteger 下載次數12 f_viewnum integer 瀏覽次數13 f_downuser lon

溫馨提示

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

評論

0/150

提交評論