博客網(wǎng)站設(shè)計(jì)報告_第1頁
博客網(wǎng)站設(shè)計(jì)報告_第2頁
博客網(wǎng)站設(shè)計(jì)報告_第3頁
博客網(wǎng)站設(shè)計(jì)報告_第4頁
博客網(wǎng)站設(shè)計(jì)報告_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、博客系統(tǒng)設(shè)計(jì)報告書1、 設(shè)計(jì)簡述越來越多的網(wǎng)絡(luò)用戶希望能夠在網(wǎng)絡(luò)平臺上更多地展現(xiàn)自己的個性,更方便地與人互動交流,在傳統(tǒng)的WEB1.0時代,無論是論壇、社區(qū)還是個人網(wǎng)站,都試圖在這些方面進(jìn)行努力,隨著WEB2.0時代的到來,一個新的概念出現(xiàn)了-博客。隨著計(jì)算機(jī)網(wǎng)絡(luò)的飛速發(fā)展,博客已經(jīng)成為寫網(wǎng)絡(luò)日志必不可少的一種工具,也是一種簡單有效的提供網(wǎng)絡(luò)用戶之間進(jìn)行在線交流的網(wǎng)絡(luò)平臺,通過其可以結(jié)交更多的朋友,表達(dá)更多的想法,它隨時可以發(fā)布日志,方便快捷。個人博客的發(fā)展,也已經(jīng)成為廣告商業(yè)務(wù)拓展的重要領(lǐng)域。本實(shí)驗(yàn)研究了一種基于數(shù)據(jù)關(guān)聯(lián)規(guī)則的個人博客網(wǎng)站。其開發(fā)主要包括后臺數(shù)據(jù)庫的建立、后臺管理以及前臺頁面

2、的Web設(shè)計(jì)。系統(tǒng)使用Microsoft公司以C#為核心語言的ASP.NET開發(fā)工具,再結(jié)合SQL Server 2005建立數(shù)據(jù)連接關(guān)系。利用其提供的各種組件,在短時間內(nèi)建立數(shù)據(jù)庫,對數(shù)據(jù)庫進(jìn)行分析與建立ASP.NET頁面,不斷改進(jìn),直到功能基本實(shí)現(xiàn)的可行系統(tǒng)。本文的研究在一定程度上借鑒了互聯(lián)網(wǎng)上博客的發(fā)展經(jīng)驗(yàn)成果,系統(tǒng)的最終目的是通過為博客提供優(yōu)質(zhì)的互動交流平臺,提高網(wǎng)站的知名度和訪問量,從而獲得為企業(yè)提供更多的產(chǎn)品介紹及發(fā)展的機(jī)會,提升自己的網(wǎng)絡(luò)價值。 本實(shí)驗(yàn)報告主要介紹了本課題的開發(fā)背景、完成的功能和開發(fā)過程,并著重說明了開發(fā)設(shè)計(jì)的思想、技術(shù)難點(diǎn)和解決方案。二、設(shè)計(jì)目的在ASP.NET

3、的課程設(shè)計(jì)中將通過完成一個博客系統(tǒng)的設(shè)計(jì)來較全面的復(fù)習(xí)這一學(xué)期所學(xué)的內(nèi)容,例如:利用DIV+CSS進(jìn)行網(wǎng)站的修飾、排版及布局;根據(jù)本學(xué)期所學(xué)的網(wǎng)站應(yīng)用系統(tǒng)的開發(fā)架構(gòu)、代碼組織及相應(yīng)的功能模塊案例,來實(shí)現(xiàn)一個帶有博客系統(tǒng)的綜合性小型網(wǎng)站。三、設(shè)計(jì)步驟1) 網(wǎng)站結(jié)構(gòu)布局的分析設(shè)計(jì),畫出關(guān)鍵頁面的總體結(jié)構(gòu)圖2) 功能需求分析、系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì),功能模塊的劃分、畫出流程圖。3) 開發(fā)平臺的安裝調(diào)試,Web服務(wù)器的配置。4) 數(shù)據(jù)庫的設(shè)計(jì)5) 利用CSS+DIV進(jìn)行各個頁面的排版、布局,并進(jìn)行各個功能模塊的設(shè)計(jì)及調(diào)試。6) 綜合調(diào)試及發(fā)布。四、設(shè)計(jì)要求(4.1)設(shè)計(jì)目標(biāo)要求本課程設(shè)計(jì)要實(shí)現(xiàn)一個帶有博客系

4、統(tǒng)的小型網(wǎng)站。網(wǎng)站的各個頁面盡量使用CSS+DIV進(jìn)行排版,博客系統(tǒng)要求有如下的功能模塊: 1) 注冊模塊a) 要求實(shí)現(xiàn):利用配置文件連接數(shù)據(jù)庫、生成驗(yàn)證碼,進(jìn)行密碼加密,限制密碼大小、驗(yàn)證賬號重復(fù)、使用存儲過程進(jìn)行數(shù)據(jù)庫操作。 2) 登錄模塊a) 用戶身份的識別、用戶輸入的驗(yàn)證。3) 博客系統(tǒng)主模塊a) 注冊用戶可以發(fā)表日志、管理日志及管理日志目錄。b) 日志瀏覽者可以發(fā)表評論。c) 系統(tǒng)提供日志列表功能。d) 管理員可以管理普通用戶及其日志。4) 日志搜索功能模塊a) 能夠在博客系統(tǒng)中進(jìn)行各種復(fù)雜的搜索功能,如模糊搜索、與條件搜索、或條件搜索等。(4.2)系統(tǒng)的性能要求網(wǎng)站界面美觀,布局合

5、理,導(dǎo)航方便,運(yùn)行時能滿足使用需求。 5、 需求分析(5.1)系統(tǒng)需求分析 本系統(tǒng)的具體要求為:1) 瀏覽日志用戶可以瀏覽作者的日志,以分享作者的心情或知識;2) 發(fā)表日志作者可以通過該功能發(fā)表自己的日志或知識;3) 評論日志用戶對作者的日志發(fā)表自己的看法;4) 日志管理供作者管理文章 (5.2)功能需求分析1) 日志管理模塊:該模塊可進(jìn)行日志文章管理、日志目錄管理等2) 寫日志模塊:通過該模塊添加新的日志3) 評論模塊:用戶可以通過該模塊發(fā)表對作者日志的看法4) 日志列表模塊:日志列表模塊根據(jù)日志所在的目錄顯示給用戶,方便用戶閱覽。 6、 系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)(6.1)系統(tǒng)功能模塊我的博客系統(tǒng)瀏覽

6、日志文章添加評論日志管理日志列表目錄管理評論管理文章管理(6.2)數(shù)據(jù)庫結(jié)構(gòu)的設(shè)計(jì) 博客系統(tǒng)的數(shù)據(jù)庫功能主要體現(xiàn)在對各種信息的提供、保存、更新和查詢操作上,包括文章信息、文章目錄信息和評論信息,各個部分的數(shù)據(jù)內(nèi)容又有內(nèi)在聯(lián)系。針對該系統(tǒng)的數(shù)據(jù)特點(diǎn),可以總結(jié)如下的需求:1) 文章信息記錄作者發(fā)表的日志信息。2) 文章目錄信息記錄了文章所在的目錄分類。3) 評論信息對應(yīng)某個文章瀏覽者發(fā)表的評論。經(jīng)過上述需求總結(jié),得出如下數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):1) 文章信息,包括數(shù)據(jù)項(xiàng)有:文章編號、文章內(nèi)容、標(biāo)題等。2) 文章目錄信息,包括數(shù)據(jù)項(xiàng)有:目錄編號、目錄名稱、目錄描述等。3) 評論信息,包括數(shù)據(jù)項(xiàng)有:評論編號

7、、文章編號、評論內(nèi)容等。(6.3)數(shù)據(jù)庫邏輯結(jié)構(gòu)的設(shè)計(jì)在博客系統(tǒng)中,首先要創(chuàng)建系統(tǒng)數(shù)據(jù)庫,然后在數(shù)據(jù)庫中創(chuàng)建需要的表和字段。數(shù)據(jù)庫命名為BlogData,在這個數(shù)據(jù)庫中管理系統(tǒng)中要建立4個表,分別是,用戶信息表,文章信息表,文章目錄信息表和評論信息表。(1) 用戶信息表(Admins)記錄了用戶的賬號和密碼,如下圖所示: (2) 文章信息表(Articles)記錄了文章的編號、目錄編號、文章標(biāo)題、簡介和文章內(nèi)容等詳細(xì)信息,如下圖所示:(3) 文章目錄表(Tags)記錄了文章的分類信息,如下圖所示:(4) 評論信息表(Comments)記錄了評論的編號、文章編號、評論的內(nèi)容和時間等,如下圖所示:

8、七、部分設(shè)計(jì)步驟以及代碼的分析(7.1)用戶登錄模塊是有l(wèi)ogin文件實(shí)現(xiàn)的代碼如下:protected void btn_login_Click(object sender, EventArgs e) string UserName = tbxaccount.Text.ToString();/獲取用戶輸入信息string Password = tbxpwd.Text.ToString(); /用戶數(shù)據(jù)加密 if (Session"CheckCode" = null) lblMessage.Text = "系統(tǒng)錯誤,不能生成驗(yàn)證碼" lblMessage

9、.Visible = true; return; if (tbxcheckcode.Text = "") lblMessage.Text = "請輸入驗(yàn)證碼" lblMessage.Visible = true; return; if (String.Compare(Session"CheckCode".ToString(), tbxcheckcode.Text, true) != 0) lblMessage.Text = "驗(yàn)證碼錯誤,請輸入正確的驗(yàn)證碼。" lblMessage.Visible = true;

10、return; /讀取數(shù)據(jù)庫連接字符串string settings = Convert.ToString(ConfigurationManager.ConnectionStrings"SqlServices"); /創(chuàng)建數(shù)據(jù)庫連接對象 SqlConnection myconn = new SqlConnection(settings); /打開數(shù)據(jù)庫連接 myconn.Open(); /讀取用戶信息 string mysql = "select * from Admins Where AdminName=" + "'" +

11、UserName + "'" + "And Password=" + "'" + Password + "'" /創(chuàng)建命令對象 SqlCommand mycmd = new SqlCommand(mysql, myconn); /創(chuàng)建適配器并執(zhí)行命令 SqlDataReader mydr = mycmd.ExecuteReader(); try if (mydr.Read() Session"UserName" = mydr"AdminName".To

12、String();/把用戶名寫入session對象 /頁面定位Response.Redirect("Default.aspx?action=0"); else lblMessage.Visible = true; /顯示錯誤信息 lblMessage.Text = "用戶名或密碼錯誤" finally /關(guān)閉操作 mydr.Close(); myconn.Close(); protected void btn_clear_Click(object sender, EventArgs e) tbxaccount.Text = "" tb

13、xpwd.Text = "" 用戶登錄后就可以進(jìn)行日志管理了,登錄頁面如下圖所示:(7.2)日志文章列表模塊articlelist文件實(shí)現(xiàn),從界面和代碼中可以看出,數(shù)據(jù)綁定是由Bind_Data()函數(shù)實(shí)現(xiàn)的代碼如下:protected void Page_Load(object sender, EventArgs e) Bind_Data(); void Bind_Data() /讀取數(shù)據(jù)庫連接字符串string settings = Convert.ToString(ConfigurationManager.ConnectionStrings"SqlServi

14、ces"); /創(chuàng)建數(shù)據(jù)庫連接 SqlConnection myconn = new SqlConnection(settings); /打開數(shù)據(jù)庫連接 myconn.Open(); string strsql = "select * from articles" /創(chuàng)建數(shù)據(jù)庫命令 SqlCommand mycmd = new SqlCommand(strsql, myconn); /執(zhí)行數(shù)據(jù)操作命令 /SqlDataReader讀取數(shù)據(jù)到記錄集后,會自動關(guān)閉數(shù)據(jù)庫的連接 SqlDataReader result = mycmd.ExecuteReader(Com

15、mandBehavior.CloseConnection); /綁定數(shù)據(jù)源 gv_article.DataSource = result; /綁定數(shù)據(jù) gv_article.DataBind(); protected void gv_article_RowDeleting(object sender, GridViewDeleteEventArgs e) /讀取數(shù)據(jù)庫連接字符串string settings = Convert.ToString(ConfigurationManager.ConnectionStrings"SqlServices"); /創(chuàng)建數(shù)據(jù)庫連接Sql

16、Connection myconn = new SqlConnection(settings); /打開數(shù)據(jù)庫連接 myconn.Open(); int id = (int)gv_article.DataKeyse.RowIndex.Value; string strsql="delete from articles Where ArticleID=" + id; /創(chuàng)建數(shù)據(jù)庫命令 SqlCommand mycmd = new SqlCommand(strsql, myconn); /進(jìn)行數(shù)據(jù)庫操作 mycmd.ExecuteNonQuery(); /關(guān)閉數(shù)據(jù)庫連接 myc

17、onn.Close(); Bind_Data(); (7.3)在博客首頁模塊中,文章目錄列表實(shí)現(xiàn)了從數(shù)據(jù)庫tags信息表中讀取目錄信息并綁定到一個DataList控件上用于向用戶展示文章目錄。該頁面的界面布局如圖所示: 該控件綁定了文章目錄信息表中的Tag_Name信息,并通過Tag_ID信息鏈接到該目錄下的文章列表頁面,數(shù)據(jù)綁定實(shí)現(xiàn)代碼如下:protected void Bind_Tags() /讀取數(shù)據(jù)庫連接字符串 string settings = Convert.ToString(ConfigurationManager.ConnectionStrings"SqlServic

18、es"); /創(chuàng)建數(shù)據(jù)庫連接對象 SqlConnection myconn = new SqlConnection(settings); myconn.Open(); string strsql = "select * from Tags" SqlCommand mycmd = new SqlCommand(strsql, myconn); /SqlDataReader讀取數(shù)據(jù)到記錄集后,會自動關(guān)閉數(shù)據(jù)庫的連接 SqlDataReader result = mycmd.ExecuteReader(CommandBehavior.CloseConnection); dl_tags.DataSource = result; dl_tags.DataBind(); 8、 總結(jié)(8.1)不足由于自己的分析設(shè)計(jì)和經(jīng)驗(yàn)不足,該系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)過程中,還有許多沒有完善的地方,比如頁面結(jié)構(gòu),色彩搭配不和諧,還有部分代碼不夠完善。開始編寫時就遇到了登錄界面與數(shù)據(jù)庫連接的困難,借助平時實(shí)訓(xùn)的仔細(xì)分析和探討完成了開始的登錄界面. 在之后的過程中遇到了連接數(shù)據(jù)庫失敗等問題,在參考了相關(guān)的書籍和查閱了網(wǎng)上相關(guān)資料而解決的

溫馨提示

  • 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

提交評論