新聞發(fā)布系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第1頁
新聞發(fā)布系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第2頁
新聞發(fā)布系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第3頁
新聞發(fā)布系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第4頁
新聞發(fā)布系統(tǒng)的設(shè)計與實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1.引言近年來,Internet 的高速發(fā)展帶動了整個世界新聞傳播的速度,我們每一刻都可以從網(wǎng)絡(luò)上知曉世界上發(fā)生的事情。電腦的普及,移動視頻,智能手機(jī)等傳媒終端的迅速的發(fā)展。使傳統(tǒng)的信息傳播媒體如電視、廣播、報紙等逐漸被人們拋棄,滿足不了人們對外界瞬息萬變的信息的好奇心,因而人們越來越習(xí)慣依賴網(wǎng)絡(luò)新聞媒體。新聞的傳播方式發(fā)生了巨大的變化,人們更多的開始關(guān)注網(wǎng)絡(luò)新聞媒體。這種媒體不但具備新聞傳播的特點(diǎn):及時、準(zhǔn)確。還具有信息量大、方便管理、方便閱讀等特點(diǎn)。有了新聞發(fā)布系統(tǒng)后,可以隨意查詢新聞,快速找到自己喜歡的新聞,并可以發(fā)表自己的評論,也方便了管理員使其能夠更加清晰的管理新聞,很好地提高了管理

2、者的效率。 當(dāng)今,網(wǎng)絡(luò)已成為了人們?nèi)粘I钚畔碓吹闹饕緩?,人們都?xí)慣于通過上網(wǎng)來獲取信息,在這種發(fā)展形勢下,網(wǎng)絡(luò)新聞逐漸深入我們的生活,成為獲得信息的一個重要手段。由于 Internet 的信息容量大,傳播范圍廣,信息傳播及時并且內(nèi)容準(zhǔn)確,大大滿足了人們的需要。把所有的信息都上傳到網(wǎng)絡(luò),供大家相互瀏覽、評論,使網(wǎng)絡(luò)的信息量越來越大,所以我們迫切的需要開發(fā)一個基于網(wǎng)絡(luò)的新聞信息瀏覽系統(tǒng)。 2.新聞發(fā)布系統(tǒng)的需求分析2.1性能需求該系統(tǒng)在性能功能上應(yīng)達(dá)到如下需求:1)操作簡單、界面友好: 完全控件式的頁面布局,使得新聞的錄入工作更簡便,許多選項(xiàng)包括新聞分類、來源部門等只需要點(diǎn)擊鼠標(biāo)就可以完成;

3、另外,跟蹤出現(xiàn)的提示信息也讓用戶隨時清楚自己的操作情況。對常見網(wǎng)站的新聞管理的各個方面:新聞錄入、瀏覽、刪除、修改、搜索等方面都大體實(shí)現(xiàn),實(shí)現(xiàn)了網(wǎng)站對即時新聞的管理要求;2)即時可見:對新聞的處理(包括錄入、刪除)將立即在主頁的對應(yīng)欄目顯示出來,達(dá)到“即時發(fā)布、即時見效”的功能;3)系統(tǒng)運(yùn)行應(yīng)該快速、穩(wěn)定、高效和可靠;4)在結(jié)構(gòu)上應(yīng)具有很好的可擴(kuò)展性,便于將來的功能擴(kuò)展和維護(hù)。用戶根據(jù)對新聞系統(tǒng)的需求分析的上述要求及新聞系統(tǒng)模型結(jié)構(gòu),新聞的功能模塊分為四個大的部分,新聞的管理,新聞的查詢,新聞類別的管理,用戶的管理。新聞管理包括新聞的瀏覽,新聞的添加和新聞的刪除;新聞的查詢是按照新聞的發(fā)布時間

4、進(jìn)行查詢;新聞類別的管理包括新聞類別的瀏覽,添加和刪除;用戶的管理包括對用戶的基本信息的瀏覽,添加和刪除。制定出新聞系統(tǒng)的系統(tǒng)功能模塊圖。該新聞系統(tǒng)的系統(tǒng)功能模塊劃分如圖4-1所示圖4-1新聞系統(tǒng)功能模塊圖2.2運(yùn)行環(huán)境要求2.2.1硬件設(shè)備要求客戶機(jī)硬件要求:具有 Pentium III 處理器以上且滿足以下要求的計算機(jī):最低 64 MB 內(nèi)存,最小 2.1 GB 硬盤。服務(wù)器硬件要求:具有 Pentium III 處理器以上且滿足以下要求的計算機(jī):最低 256MB 內(nèi)存,最小 8 GB 硬盤。2.2.2軟件設(shè)備要求 客戶端操作系統(tǒng):Windows 98/NT/2000/XP或更高版本瀏覽器

5、:IE 5.0以上或Netscape同等版本以上服務(wù)端系統(tǒng)設(shè)計工具: Visual Studio 2005或者Visual Studio 2008數(shù)據(jù)庫:SQL server20053. 系統(tǒng)設(shè)計3.1新聞系統(tǒng)的設(shè)計模型結(jié)構(gòu)3.1.1系統(tǒng)的功能模塊新聞的功能模塊分為四個大的部分,新聞的管理,新聞的查詢,新聞類別的管理,用戶的管理。新聞管理包括新聞的瀏覽,新聞的添加和新聞的刪除;新聞的查詢是按照新聞的發(fā)布時間進(jìn)行查詢;新聞類別的管理包括新聞類別的瀏覽,添加和刪除;用戶的管理包括對用戶的基本信息的瀏覽,添加和刪除。系統(tǒng)的功能模塊圖如圖3-1所示圖3-1系統(tǒng)的功能模塊圖3.1.2用戶管理功能模塊的關(guān)

6、系本新聞系統(tǒng)的用戶分為管理員用戶和普通的用戶。普通用戶在新聞管理上可以瀏覽新聞的基本信息,添加新聞;在新聞查詢上可以按照新聞的發(fā)布時間對新聞進(jìn)行查詢。管理員用戶除了擁有普通用戶的功能外,還可以在用戶管理上對用戶進(jìn)行用戶的基本信息的瀏覽,用戶管理和新聞類別管理是管理員用戶所特有的操作,用戶管理包括對所有用戶的添加、瀏覽和刪除;新聞類別管理是在進(jìn)行新聞類別界面對新聞界面的瀏覽,添加和刪除。用戶的功能模塊圖如圖3-2所示圖3-2用戶功能模塊圖3.1.3系統(tǒng)工作流程分析用戶進(jìn)入系統(tǒng)后,按照其身份的不同,可進(jìn)入不同操作界面。但是其工作的流程是大致相同的。如果是管理員用戶,則進(jìn)入管理員身份的新聞系統(tǒng),管理

7、員可以進(jìn)行新聞管理、新聞查詢、用戶管理和新聞類別的管理,管理員的新聞管理不但有新聞的添加和瀏覽,還可以對新聞進(jìn)行刪除操作;新聞查詢是按照時間對新聞進(jìn)行精確地查詢,并在查詢界面返回查詢結(jié)果;用戶可以在每個頁面新聞之間相互跳轉(zhuǎn),只要點(diǎn)擊相應(yīng)頁面的連接就可以實(shí)現(xiàn)。其工作流程圖如圖3-3所示圖3-3系統(tǒng)工作流程圖3.2新聞系統(tǒng)的功能模塊簡介新聞的功能是新聞系統(tǒng)的重點(diǎn)模塊,進(jìn)一步了解與熟悉新聞系統(tǒng)的功能模塊,才能夠很好的完成新聞系統(tǒng),掌握新聞系統(tǒng)的工作流程,明確每一個新聞系統(tǒng)界面的功能。下面是對新聞管理系統(tǒng)功能模塊的一些說明。3.2.1.新聞類別管理管理員發(fā)布Web Services,使得用戶可以通過W

8、eb Services向數(shù)據(jù)轉(zhuǎn)換服務(wù)器發(fā)送執(zhí)行作業(yè)的請求。用戶調(diào)用發(fā)布的Web Services,輸入相關(guān)的參數(shù),服務(wù)器調(diào)用適當(dāng)?shù)淖鳂I(yè)服務(wù)器和作業(yè)來處理請求,最后將需要的結(jié)果返回。(1)新聞類別的錄入,包括類別編號和類別名稱等信息;(2)新聞類別的增加;(3)新聞類別的刪除;3.2.2.新聞的管理通過對后臺數(shù)據(jù)庫相關(guān)內(nèi)容的修改能夠?qū)崿F(xiàn)對新的新聞內(nèi)容進(jìn)行添加和講過去的新聞刪除,為此系統(tǒng)的核心部分。(1)基本新聞信息的錄入,包括新聞標(biāo)題、新聞內(nèi)容和所屬類別等;(2)基本新聞信息的增加;(3)基本新聞信息的刪除;3.2.3.新聞查詢模塊(1)按照新聞類別分頁顯示新聞; (2)按照日期分頁顯示新聞。

9、3.2.4.編輯用戶信息(1)系統(tǒng)用戶信息的錄入,包括用戶名和密碼等信息;(2)系統(tǒng)用戶信息的增加;(3)系統(tǒng)用戶信息的刪除。4.詳細(xì)設(shè)計4.1數(shù)據(jù)庫設(shè)計本系統(tǒng)定義的數(shù)據(jù)庫中包含以下3個表:新聞類別表:category、新聞基本信息表:news、和用戶信息表:xtuser。首先根據(jù)新聞系統(tǒng)設(shè)計計劃表的的內(nèi)容及相關(guān)的屬性,并使用數(shù)據(jù)庫工具創(chuàng)建表。下面分別介紹這些表的結(jié)構(gòu)及相關(guān)內(nèi)容,表建立好后,新聞系統(tǒng)的用戶可以根據(jù)具體的新聞系統(tǒng)的實(shí)現(xiàn)新聞系統(tǒng)的功能。4.1.1新聞類別表category新聞類別表category用來保存新聞類別數(shù)據(jù),結(jié)構(gòu)如表4.1所示。表4.1新聞類別表category的結(jié)構(gòu)編號

10、字段名稱數(shù)據(jù)結(jié)構(gòu)說明1cateIDint新聞類別編號2catenamevarchar (50)新聞類別名稱(其中cateID是表category的主鍵)在設(shè)計數(shù)據(jù)庫結(jié)構(gòu)時,很多表都需要設(shè)計一個整型字段作為標(biāo)識列,這幾乎已經(jīng)成為慣例,例如表category中的cateID字段。所謂標(biāo)識列,就是可以惟一標(biāo)識一行記錄的列,在表中不會存在兩條標(biāo)識列相同的記錄。如果其他表需要引用表category中的數(shù)據(jù),則在表中添加一個cateID字段就可以了。有的程序設(shè)計人員習(xí)慣于直接使用名稱字段作為標(biāo)識列,例如表category中的catename字段。這樣,如果修改catename字段的值,就需要同時修改其他所

11、有表的相應(yīng)字段的值,從而造成不必要的麻煩。在系統(tǒng)中,cateID字段對于用戶來說是透明的,用戶感覺不到它的存在,也無法對其進(jìn)行修改。其中新聞類別編號的int是自增長的的。在SQL server 2005中創(chuàng)建的category表如圖4-1所示圖4-1新聞類別表category4.1.2基本新聞表news基本新聞表news用來保存網(wǎng)上新聞的基本信息,結(jié)構(gòu)如表4.2所示。表4.2基本新聞表news的結(jié)構(gòu)編號字段名稱數(shù)據(jù)結(jié)構(gòu)說明1IDint新聞編號2titlevarchar(50)新聞標(biāo)題3contenttext新聞內(nèi)容4postTimedatetime提交時間5postervarchar(50)提

12、交人6cateIdint新聞類別編號(其中ID是表news的主鍵,主鍵ID自增長的)在SQL Server 2005中,可以使用char、varchar和text等3種數(shù)據(jù)類型存儲非Unicode字符數(shù)據(jù)。char和varchar只能存儲最多8000個字符,其中char用于存儲固定長度的字符數(shù)據(jù),varchar用于存儲可變長度的字符數(shù)據(jù)。如果需要存儲的數(shù)據(jù)很大,則可以使用text數(shù)據(jù)類型,例如表News中的Content字符,因?yàn)樾侣剝?nèi)容的數(shù)據(jù)量通常會超過8000個字符。text數(shù)據(jù)類型也是可變長度的,最多可為2147483647個字符。其中新聞編號ID是自增長的。在SQL

13、 server 2005中創(chuàng)建的news表如圖4-2所示圖4-2基本新聞表news4.1.3用戶信息表xtuser用戶信息表xtuser用來保存用戶的基本信息,這個表主要涉及新聞系統(tǒng)用戶的各項(xiàng)基本的信息,每個用戶的基本信息包括用戶ID、用戶名、密碼、真實(shí)姓名、電子郵件和是否是管理員6項(xiàng),其結(jié)構(gòu)如表4.3所示表4.3 用戶信息表xtuser的結(jié)構(gòu)編號字段名稱數(shù)據(jù)結(jié)構(gòu)說明1userIDint用戶ID號2usernamevarchar(50)用戶名3userpwdvarcahr(50)密碼4Enamevarchar(50)用戶姓名5Emailvarchar(50)電子郵箱6adminint是否為管理

14、員((0為是管理員,1為不是管理員),userId是表xtuser的主鍵,用戶ID號userId是自增長的。)SQL server 2005中創(chuàng)建的xtuser表如圖4-3所示圖4-3用戶信息表xtuser4.2各主要窗體頁的圖形界面介紹新聞系統(tǒng)的頁面設(shè)計是基于各個窗體的圖形界面的。新聞系統(tǒng)的各個主要界面包括用戶的登錄界面,新聞管理界面,新聞查詢界面,新聞類別管理界面和用戶管理界面5個大的部分。設(shè)計者根據(jù)需求分析中的新聞系統(tǒng)的要求,完成對新聞系統(tǒng)的頁面設(shè)計。4.2.1登錄界面登錄界面包括用戶名和密碼,及一個身份的選擇,在Visual Studio中的工具欄中分別選擇Label、DropList

15、、TextBox和Buttton控件,選中每個控件,修改每個控件屬性中的“text”,更改為要顯示出的內(nèi)容,根據(jù)需要調(diào)整其位置及大小,如修改密碼的屬性為password,使其顯示為密碼形式等。登錄界面的設(shè)計如圖4-4所示圖4-4用戶登錄界面4.2.2新聞管理界面新聞管理界面是顯示新聞內(nèi)容的一個重要界面,在上面不但可以瀏覽到用戶提交的新聞,還可以連接到其他的管理界面,并可以轉(zhuǎn)到新聞添加的界面。所要用到的控件是Hyperlink、Label、TextBox和Buttton,并需要添加一個GridView的表,根據(jù)新聞數(shù)據(jù)庫中的有關(guān)新聞的信息,完善GridView表的內(nèi)容。因?yàn)槭荊ridView表格

16、,所以完成表格列的的基本信息后要對表格進(jìn)行數(shù)據(jù)綁定,在數(shù)據(jù)綁定時綁定的列的名稱一定要與數(shù)據(jù)庫中列的名稱一致,GridView表中包含刪除一項(xiàng),所以要對刪除的RowDeleting屬性進(jìn)行修改完善。添加后的新聞管理界面設(shè)計顯示如圖4-5所示圖4-5新聞管理界面新聞管理界面還應(yīng)包括新聞添加的界面,點(diǎn)擊新聞添加按鈕,就可以跳轉(zhuǎn)到新聞添加頁面。添加新聞界面是用戶填寫新聞基本信息的界面。設(shè)計者要根據(jù)需要把控間的每個屬性進(jìn)行完善,例如新聞的各項(xiàng)基本信息選項(xiàng)不可為空,如果為空,則新聞添加不成功,并要給出提示等等。添加新聞的設(shè)計如圖4-6所示圖4-6添加新聞界面4.2.3新聞查詢界面新聞查詢界面是用戶按照新聞

17、的提交時間來進(jìn)行查詢的一個操作界面,新聞查詢也要使用一個GridView表,其顯示格式要與新聞管理中的新聞表一樣,普通用戶和管理員用戶都可以通過單擊“開始查詢”來查找新聞,并可以點(diǎn)擊“重新查詢”來進(jìn)行重新查詢。所以新聞查詢界面的設(shè)計如圖4-7所示圖4-7新聞查詢界面4.2.4新聞類別管理界面新聞類別管理是新聞進(jìn)行分類和添加新聞時進(jìn)行新聞選擇的一個重要管理,管理員用戶可以添加和刪除新聞類別,添加和刪除新聞類別在一個界面之上,用戶并可以在此界面上連接到其他的管理界面,所要用到的控件是Hyperlink、Label、TextBox和Buttton,及一個GridView的新聞表格,表格的形式應(yīng)與新聞

18、管理中的新聞表格一致(沒有新聞刪除一列)新聞類別管理的界面設(shè)計如圖4-8所示圖4-8新聞類別管理界面4.2.5用戶管理界面用戶管理包括管理員用戶對所有用戶的添加和刪除,在用戶管理界面上可以看到所有的用戶的各項(xiàng)基本信息,通過點(diǎn)擊“添加用戶”按鈕來進(jìn)入用戶添加界面,對用戶的基本信息進(jìn)行添加,通過返回用戶管理界面進(jìn)行添加后的用戶信息查看。點(diǎn)擊“刪除”來刪除用戶。用戶管理界面的設(shè)計如圖4-9所示圖4-9用戶管理界面用戶管理應(yīng)包括一個添加用戶基本信息的界面,同新聞的基本信息添加一樣。用戶的各項(xiàng)基本信息的空間屬性也需要進(jìn)行相關(guān)的完善。除了各項(xiàng)必須要填寫的信息外,密碼要設(shè)置成不可見的形式,另外確認(rèn)密碼的屬性

19、也要設(shè)置為源輸入密碼一致。添加用戶的操作設(shè)計如圖4-10所示圖4-10添加用戶界面4.3系統(tǒng)部分重要功能及代碼新聞系統(tǒng)設(shè)計用戶登錄,新聞管理,新聞添加,新聞刪除,新聞查詢,新聞類別管理,新聞類別添加,新聞類別刪除,用戶管理,添加用戶,刪除用戶等,在新聞系統(tǒng)的每個前臺創(chuàng)建好新聞系統(tǒng)的各個界面以后(ASPX界面),需要連接調(diào)用Web Services方法。Web Services所用到的WebMethod一共有2個,其中一個是userWeb Services.cs,包括登錄時的CheckUser(),添加用戶時的用到的AddUser(),登錄用戶管理界面時出現(xiàn)數(shù)據(jù)表DataTable UserMa

20、nage(),以及刪除刪除用戶的DeleteUser()等等,另一個newsWeb Services.cs,包括添加新聞時用到的AddNews(),新聞類別管理時出現(xiàn)的數(shù)據(jù)表格用到的 Category(), 刪除新聞時用到的DeleteNews(), 刪除新聞類別時用到的DeleteCategory(),核對新聞數(shù)據(jù)表格時用到的 CheckNews()等等。新聞系統(tǒng)所要用到的全部Web Services的方法如圖4-11(a)和圖4-11(b)所示圖4-11(a)NewWebServices方法圖4-11(b)UserWebServices方法4.3.1用戶登錄用戶登錄界面包括用戶名,密碼和用

21、戶身份的選擇,首先要創(chuàng)建名為“Login.aspx”的文件。在設(shè)計好文件樣式后,要編輯每個功能按鈕的代碼。對于“登錄”按鈕,在“”中的代碼為:protected void Button_Login_Click(object sender, EventArgs e) UserWebService userWS = new UserWebService(); string username = TextBox_Username.Text; string pwd = TextBox_Password.Text; int chr=userWS.CheckUser(username, pwd); if

22、(chr=0) Response.Redirect("/NewsManage.aspx"); else if (chr=1) Response.Redirect("/NewsManage2.aspx"); else Label_Result.ForeColor = Color.Red; Label_Result.Text = "用戶名與密碼不一致,請重新輸入!" 上述部分代碼的功能是用戶輸入用戶名和密碼后,點(diǎn)擊登錄系統(tǒng)會根據(jù)用戶輸入用戶名和密碼,作出判斷:如果是管理員,則進(jìn)入到管理員的新聞管理界面;如果是普通用戶,則進(jìn)入到普通用戶的新

23、聞管理界面;如果輸入的用戶名和密碼不符,則不能成功登陸,系統(tǒng)會自動提示“用戶名與密碼不一致,請重新輸入!”上述代碼是在“”文件中編寫的,而在上述代碼里面調(diào)用了Web Services的方法,在UserWeb Services.cs的文件下的WebMethod CheckUser()的代碼如下:WebMethod public int CheckUser(string username, string pwd) /連接用戶數(shù)據(jù)庫 判斷 DB db = new DB(); db.Connect(); string sql = "SELECT * FROM xtuser WHERE use

24、rname='" + username + "' and userpwd='" + pwd + "'" SqlDataReader reader = db.QueryReader(sql); if (reader.Read() return (int)reader"admin" else return -1; 在的頁面進(jìn)行調(diào)試,調(diào)用WebMethod中的用于判定與聯(lián)系數(shù)據(jù)庫的方法,就可以登錄在本系統(tǒng)中還需要一個通用的類DB.cs用于數(shù)據(jù)庫的連接,可以避免重復(fù)的編寫,通用類DB的關(guān)鍵代碼如下:p

25、ublic void Connect() if (conn = null) conn = new SqlConnection(DB.connString); if (conn.State != ConnectionState.Open) conn.Open(); public void Close() if (conn != null && conn.State != ConnectionState.Closed) conn.Close(); / <summary> / 獲取SqlDataReader / </summary>public SqlData

26、Reader QueryReader(string sql) SqlCommand cmd = new SqlCommand(sql, conn); return cmd.ExecuteReader(CommandBehavior.CloseConnection);/ <summary> / 執(zhí)行非查詢語句 / </summary> public int QueryInt(string sql) SqlCommand cmd = new SqlCommand(sql, conn); return cmd.ExecuteNonQuery(); 用戶在填寫好用戶名和密碼之后

27、,就可以順利登陸系統(tǒng),如果用戶名或密碼錯誤,則系統(tǒng)會給出提示,提示用戶更正錯誤,是否是管理員身份的選擇用戶可以進(jìn)行選擇,也可以不用選擇,系統(tǒng)會根據(jù)數(shù)據(jù)庫中用戶身份自動判斷用戶是否是管理員。新聞系統(tǒng)的登錄界面如圖4-12所示(圖4-12就是登陸失敗的情況)圖4-12用戶登錄4.3.2新聞管理用戶成功登陸后,就進(jìn)入了新聞管理界面,新聞管理界面包括與其他新聞系統(tǒng)頁面的相互跳轉(zhuǎn)級新聞的添加和刪除,進(jìn)入新聞管理界面首先可以瀏覽到一個新聞基本信息的表,所以在“”文件中首先應(yīng)有如下代碼;protected void Page_Load(object sender, EventArgs e) /一個新聞的表格

28、 NewsWebService newsWS = new NewsWebService(); DataTable dt = newsWS.News(); GridView_News.DataSource = dt; GridView_News.DataBind();顯示的新聞表格GridView_News調(diào)用了Web Services方法,在NewsWeb Services.cs中的News方法代碼如下:WebMethod public DataTable News() DB db = new DB(); db.Connect(); string sql = "SELECT * FR

29、OM news" SqlDataReader reader = db.QueryReader(sql); DataTable dt = new DataTable(); dt.Load(reader); db.Close(); return dt;用戶成功登陸后,就進(jìn)入了新聞管理界面,新聞管理界面包括與其他新聞系統(tǒng)頁面的相互跳轉(zhuǎn)級新聞的添加和刪除,點(diǎn)擊相關(guān)的連接,用戶就可以跳轉(zhuǎn)到相關(guān)的頁面,進(jìn)入新聞管理界面首先可以瀏覽到一個新聞基本信息的表,用戶點(diǎn)擊添加新聞按鈕,就可以對新聞進(jìn)行添加,新聞管理界面如圖4-13所示(圖4-13登陸的身份是管理員用戶)圖4-13新聞管理另外點(diǎn)擊“添加新聞

30、”按鈕進(jìn)入到添加新聞的界面,跳轉(zhuǎn)到添加新聞頁面(Addnews.aspx)的代碼如下:protected void Button1_Click(object sender, EventArgs e) Response.Redirect("/Addnews.aspx");普通用戶和管理員都可以對新聞進(jìn)行添加,填寫新聞的有關(guān)基本信息,然后提交。提交成功后,可以在新聞管理界面瀏覽到剛剛添加的新聞。新聞添加界面包括新聞的基本信息新聞類別、新聞題目、新聞發(fā)布人、發(fā)布時間、新聞內(nèi)容,在進(jìn)入新聞添加的界面時,要首先獲取一個新聞類別的下拉框,新聞類別的內(nèi)容是根據(jù)數(shù)據(jù)庫中的新聞類別(cate

31、gory)自動獲取的,獲取新聞類別的代碼如下:protected void Page_Load(object sender, EventArgs e) if (!IsPostBack) /通過WebService獲取分類信息 NewsWebService newsWS = new NewsWebService(); ArrayList lst = newsWS.GetCategory(); for (int i = 0; i < lst.Count; i+) object news = (object)lsti; (new ListItem(news1.ToString(), news0

32、.ToString(); 由于在上述代碼中調(diào)用了Web Services方法,在NewsWeb Services.cs中獲取分類的GetCategory方法的代碼如下:WebMethod public ArrayList GetCategory() ArrayList lst = new ArrayList(); DB db = new DB(); db.Connect(); string sql = "SELECT * FROM category" SqlDataReader reader = db.QueryReader(sql); while (reader.Read

33、() object news = new object2; news0 = (int)reader"cateID" news1 = reader"catename".ToString(); lst.Add(news); reader.Close(); return lst;用戶完成新聞的基本信息填寫后,點(diǎn)擊“確定“按鈕,就可以對新聞進(jìn)行添加,如果基本信息填寫不完全,則系統(tǒng)會自動提示用戶把新聞基本信息填寫完整,之后才可以成功提交新聞。添加新聞的關(guān)鍵代碼如下:protected void Button1_Click(object sender, EventA

34、rgs e) NewsWebService newsWS = new NewsWebService(); bool result = newsWS.AddNews(TextBox_Title.Text, TextBox_Content.Text, TextBox_Poster.Text, int.Parse(DropDownList_Category.SelectedValue); if (result) Response.Write("<Script Language='JavaScript'> window.alert('新聞添加成功!'

35、;)</Script>"); else Response.Write("<Script Language='JavaScript'> window.alert('新聞添加失敗,請聯(lián)系管理員!')</Script>"); 在添加新聞的上述代碼中調(diào)用了Web Services方法,在NewsWeb Services.cs中的AddNews方法代碼如下:WebMethod public bool AddNews(string title, string content, string poster, i

36、nt cateID) DB db = new DB(); db.Connect(); string sql = "INSERT INTO news(title, content, posttime, poster, cateID) VALUES('" + title + "','" + content + "','" + () + "','" + poster + "'," + cateID + ")" int

37、affectedRows = db.QueryInt(sql); db.Close(); return affectedRows > 0;用戶如果想繼續(xù)添加新聞,則點(diǎn)擊“繼續(xù)“按鈕,就可以繼續(xù)添加新聞,即用戶返回添加新聞的頁面就可以繼續(xù)添加新聞了,繼續(xù)添加新聞的代碼如下:protected void Button2_Click(object sender, EventArgs e) /繼續(xù)添加新聞 Response.Redirect("/AddNews.aspx");如果用戶想查看新聞添加后的情況,則點(diǎn)擊“返回”按鈕,就可以返回新聞管理界面,查看剛剛添加的新聞的基本情

38、況,返回操作的關(guān)鍵代碼是:protected void Button3_Click(object sender, EventArgs e) /返回到新聞管理 Response.Redirect("/NewsManage.aspx"); 新聞添加界面包括新聞的基本信息新聞類別、新聞題目、新聞發(fā)布人、發(fā)布時間、新聞內(nèi)容,在進(jìn)入新聞添加的界面時,用戶填寫好新聞的各項(xiàng)基本信息之后,點(diǎn)擊確定按鈕,就可以成功添加新聞,再點(diǎn)擊返回按鈕,返回新聞管理界面,查看新聞是否添加成功。添加新聞添加新聞的操作界面如圖4-14所示圖4-14添加新聞如果是用戶管理員的身份登錄,則在新聞管理界面的基本信息

39、的表中應(yīng)包含刪除的功能,點(diǎn)擊“刪除”就可以把要刪除的新聞刪除,刪除新聞的關(guān)鍵代碼如下:protected void GridView_News_RowDeleting(object sender, GridViewDeleteEventArgs e) int uid = int.Parse(GridView_News.Rowse.RowIndex.Cells0.Text); NewsWebService newsWS = new NewsWebService(); if (newsWS.DeleteNews(uid) Response.Write("<Script Langua

40、ge='JavaScript'> window.alert('新聞刪除成功!')</Script>"); DataTable dt = newsWS.News(); GridView_News.DataSource = dt; GridView_News.DataBind(); else Label_Result.ForeColor = Color.Red; Label_Result.Text = "刪除失敗!" 刪除新聞在此要調(diào)用Web Services方法,在NewsWeb Services.cs中Delete

41、News方法的關(guān)鍵代碼如下:WebMethod public bool DeleteNews(int nid) /刪除新聞 DB db = new DB(); db.Connect(); string sql = "DELETE FROM news WHERE ID=" + nid; return db.QueryInt(sql) > 0;新聞刪除是新聞系統(tǒng)中管理員用戶對于新聞的一項(xiàng)操作,是管理員用戶在新聞管理界面點(diǎn)擊“刪除”按鈕來實(shí)現(xiàn)的。管理員用戶只要點(diǎn)擊數(shù)據(jù)表中的刪除,就可以把那一行對應(yīng)的新聞刪除,新聞管理中的新聞刪除的界面如圖4-15所示(如果不是管理員身份登錄

42、,則在新聞管理界面沒有刪除新聞的操作。)圖4-15新聞刪除4.3.3新聞查詢用戶可以在新聞管理界面通過新聞查詢連接到新聞查詢的界面。本系統(tǒng)的新聞查詢是按照新聞的發(fā)布時間進(jìn)行查詢的,有兩個日期,一個是查詢的開始時間,一個是查詢的截止時間(截止時間默認(rèn)不選的話就是當(dāng)前的時間)點(diǎn)擊“開始查詢”按鈕,就會根據(jù)查詢輸入的需要列出對應(yīng)的新聞。在新聞查詢中“QueryNews.aspx”文件中開始查詢的代碼是:protected void Button1_Click(object sender, EventArgs e) NewsWebService newsWS = new NewsWebService(

43、); string begt=(); string endt=(); if (endt = "") endt = (); DataTable dt = newsWS.CheckNews(begt, endt); GridView1.DataSource = dt; GridView1.DataBind();新聞查詢時的QueryNews.aspx之中要調(diào)用Web Services方法,即NewsWeb Services.cs中CheckNews()方法,這個方法的關(guān)鍵代碼如下:WebMethod public DataTable CheckNews(string begin

44、time, string endtime) /按時間查詢新聞 DB db = new DB(); db.Connect(); string sql = "SELECT * FROM news WHERE posttime BETWEEN '" + begintime.ToString().Replace("'", "''") + "' AND '" + endtime.ToString().Replace("'", "'&

45、#39;") + "'" SqlDataReader reader = db.QueryReader(sql); DataTable dt = new DataTable(); dt.Load(reader); db.Close(); return dt; 點(diǎn)擊“重新查詢”按鈕則會重新對新聞進(jìn)行查詢,重新查詢的代碼是:protected void Button2_Click(object sender, EventArgs e) / 重新查詢 Response.Redirect("/QueryNews.aspx"); 新聞查詢包括新聞系

46、統(tǒng)相關(guān)頁面的跳轉(zhuǎn)和新聞的按上傳時間的查詢,用戶只需俺系統(tǒng)的時間格式要求輸入新聞的上傳時間的范圍,點(diǎn)擊“開始查詢”按鈕,就可以查詢到相關(guān)的新聞,如果想要重新查詢,只需點(diǎn)擊重新查詢按鈕即可。查詢時的操作界面如圖4-16所示圖4-16新聞查詢4.3.4新聞類別管理管理員用戶可以進(jìn)入新聞類別管理,進(jìn)入新聞類別管理界面,首先要看到一個新聞類別的表,在CategoryManage.aspx的文件中的代碼是:protected void Page_Load(object sender, EventArgs e) /出現(xiàn)一個新聞類別的表格 NewsWebService newsWS = new NewsWeb

47、Service(); DataTable dt = newsWS.Categorys(); GridView_Category.DataSource = dt; GridView_Category.DataBind();上述代碼中調(diào)用了Web Services方法, NewsWeb Services.cs中Categorys的關(guān)鍵代碼如下:public DataTable Categorys() DB db = new DB(); db.Connect(); string sql = "SELECT * FROM category" SqlDataReader reader

48、 = db.QueryReader(sql); DataTable dt = new DataTable(); dt.Load(reader); db.Close(); return dt; 新聞類別管理界面上還有對新聞類別進(jìn)行添加和刪除的功能,添加和刪除新聞類別在同一個界面之上,在輸入新聞類別之后,點(diǎn)擊添加新聞類別按鈕,就可以添加新的新聞類別,添加新聞類別的代碼如下:protected void Button1_Click(object sender, EventArgs e) /添加新聞類別 if (TextBox_CateName.Text!="") NewsWebS

49、ervice newsWS = new NewsWebService(); bool result = newsWS.Category(TextBox_CateName.Text); Response.Redirect("/CategoryManage.aspx"); Response.Write("<Script Language='JavaScript'> window.alert('新聞類別添加成功!')</Script>"); Label_Result.Text = "新聞類別添加

50、失??!" Label_Result.ForeColor = Color.Red; 添加新聞類別時調(diào)用Web Services方法,NewsWeb Services.cs中CheckNewsCategory方法的關(guān)鍵代碼如下:WebMethod public bool Category(string catename) DB db = new DB(); db.Connect(); string sql = "INSERT INTO category(catename) VALUES('" + catename + "')" in

51、t affectedRows = db.QueryInt(sql); db.Close(); return affectedRows>0;新聞類別管理區(qū)別于新聞管理界面,新聞類別管理是把新聞類別的瀏覽,添加和刪除集合在一個界面之中,并包括每個頁面之間的跳轉(zhuǎn),用戶在輸入新聞類別的名稱之后,點(diǎn)擊“添加”按鈕就可以正確添加新聞類別,并在上方的數(shù)據(jù)表格中瀏覽到,如果想要刪除新聞類別,只需點(diǎn)擊新聞類別數(shù)據(jù)表中的刪除選項(xiàng),就可以刪除對應(yīng)的新聞類別。新聞類別的界面如圖4-17所示 圖4-17新聞類別管理點(diǎn)擊新聞類別表列的的“刪除”,即可把要刪除的新聞類別刪除,刪除包括在GridView的新聞類別表的一

52、列中,在CategoryManage.aspx的文件中刪除的代碼如下:protected void GridView_Category_RowDeleting(object sender, GridViewDeleteEventArgs e) int cid = int.Parse(GridView_Category.Rowse.RowIndex.Cells0.Text); NewsWebService newsWS = new NewsWebService(); if (newsWS.DeleteCategory(cid) Response.Write("<Script Language='JavaScript'> window.alert('新聞類別刪除成功!')</Script>"); Response.Redirect("/CategoryManage.aspx"); else Label_Result.

溫馨提示

  • 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

提交評論