基于ASP NET的安卓論壇設計與實現-軟件技術專業(yè)畢業(yè)論文
《基于ASP NET的安卓論壇設計與實現-軟件技術專業(yè)畢業(yè)論文》由會員分享,可在線閱讀,更多相關《基于ASP NET的安卓論壇設計與實現-軟件技術專業(yè)畢業(yè)論文(39頁珍藏版)》請在裝配圖網上搜索。
1、 軟件技術專業(yè)畢業(yè)論文 基于ASP.NET的安卓論壇設計與實現 目 錄 論 文 摘 要 1 一、 BBS介紹 2 二、 使用工具及相關知識 3 (一) SQL Server 2008 概述 3 (二) ADO.NET概述 3 (三) ASP.NET簡介 4 三、 系統分析 4 (一) 系統可行性分析 4 (二) 系統功能的需求分析 6 (三) 系統簡要用例圖分析 8 (四) 運行環(huán)
2、境 9 四、 系統總體設計 10 (一) 系統的設計目標 10 (二) 系統功能結構 11 五、 數據庫設計 12 (一) 數據庫和設計概述 13 (二) 概念模型設計(E-R圖) 13 (三) 數據庫邏輯設計 14 六、 系統的詳細設計與實現 17 (一) 前臺設計與實現 17 (二) 論壇后臺頁面設計如實現 28 結 論 36 參 考 文 獻 37 37 論 文 摘 要 論壇系統BBS(Bullitin Board System)是互聯網上一種人與人之間交互的必備工具,特別是做網站的必備,網上論壇提供一個信息交流的空間。人們可以
3、通過論壇一起討論自己喜歡的話題,提出自己喜歡的話題或者是回答一些問題。用戶可以在論壇上發(fā)表對某個問題的看法闡述自己的觀點,給別人討論對某個問題的看法,在Internet的發(fā)展中論壇的作用是無法代替的。 然而開發(fā)論壇的應用程序必須了解兩部分的內容,即前臺開發(fā)工具和后臺的數據庫。本文利用ASP.NET技術進行前臺界面設計,利用SQL Server 2008設計的后臺數據庫以及利用ADO.NET數據庫訪問技術實現對數據庫的各種管理操作,實現BBS的各種基本功能。主要分析了BBS的主要組成情況,包括BBS的設計目標,框架結構,數據流程和BBS的主要特點等,重點介紹了前臺功能模塊的詳細思路和實現方法,
4、以及對后臺數據庫關鍵技術和部分源代碼的詳細說明。 關鍵詞:BBS ASP.NET ADO.NET SQL 基于ASP.NET的安卓論壇設計與實現 xxx (xxx大學 軟件學院軟件技術專業(yè)) 論壇系統服務已經是互聯網站一種極為常見的互動交流服務。論壇可以向網友提供開放性的分類專題討論區(qū)服務,可以在此發(fā)表自己的某些觀感、交流某些技術、經驗乃至人生的感悟和憂歡,亦可以作為網友之間的交流渠道。通過論壇的方式,增強人與人、個人與團體、團體與團體之間的交流聯系,在Internet上實習信息的傳遞,提高辦事效率。因此論壇建設在Interne
5、t應用上的地位顯而易見,它已成為現代人溝通和獲取信息的重要組成部分,從而倍受人們的重視。 一、 BBS介紹 BBS起源于二十世紀80年代初,最早的BBS只提供消息投遞和閱讀功能,使用者通常是些計算機愛好者。隨后,系統允許會員之間分享軟件、文件,進行實時網絡對話、信件傳輸等。為了提供更好的服務,一些站點實行收費政策,但目前Internet上還是有無數免費BBS站點。一般BBS站點地址以域名形式出現,這些站點可通過遠程登錄進行連接,更多的站點采用WWW的形式供會員使用。 BBS也被稱為異步會議系統、布告板,是網絡上除了E-mail之外,最為普遍的在線討論系統,它來源于早期Internet發(fā)展
6、的BBS系統(Bulletin Board System),隨著Internet的發(fā)展,逐步演變成現在的形式——基于Web的BBS系統。 在本文中,主要介紹使用ASP.NET技術來實現網絡論壇建設。通過基于Internet互聯網的動態(tài)WEB數據技術,可以解決遠程的數據傳輸與讀取,遠程的客戶終端(Client)可以通過WEB頁面提交請求,查詢遠端的數據服務器上的信息,以實現信息的共享,同時利用Internet技術可以降低軟件的開發(fā)和部署成本,只要在服務器上安裝WEB應用就可以使每個客戶端都能瀏覽使用。 目前,通過BBS系統可隨時獲取各種最新的信息;也可以通過BBS系統來和別人討論計算機軟件、
7、硬件、硬件、Internet、多媒體、程序設計及人文、地理等等各種有趣的話題;還可以利用BBS系統來發(fā)布一些“問題”、“廉價轉讓”、“招聘啟示”等問題;更可以召集親朋友好友到聊天室內高談論闊……這個精彩的天地就在你我的身旁,只要您擁有一臺可以訪問互聯網的計算機,就可以通過這個交流平臺,來享受它的種種服務。 二、 使用工具及相關知識 (一) SQL Server 2008 概述 SQL Server 2008出現在微軟數據平臺愿景上是因為它使得公司可以運行他們最關鍵任務的應用程序,同時降低了管理數據基礎設施和發(fā)送觀察和信息給所有用戶的成本。這個平臺有以下特點: 1.可信任的——使得公司
8、可以以很高的安全性、可靠性和可擴展性來運行他們最關鍵任務的應用程序。 2.高效的——SQL Server 2008降低了管理系統、.NET架構和Visual Studio的時間和成本,使得開發(fā)人員可以開發(fā)強大的下一代數據庫應用程序。 3.智能的——商業(yè)智能(BI)繼續(xù)作為大多數公司投資的關鍵領域和對于公司所有層面的用戶來說的一個無價的信息源。 (二) ADO.NET概述 ADO.NET的名稱起源于ADO(ActiveX Data Objects),這是一個廣泛的類組,用于在以往的Microsoft技術中訪問數據.之所以使用ADO.NET名稱,是因為Microsoft希望表明,這是在.
9、NET編程環(huán)境中優(yōu)先使用的數據訪問接口。 它提供了平臺互用性和可伸縮的數據訪問。ADO.NET增強了對非連接編程模式的支持,并支持RICH XML。由于傳送的數據都是XML格式的,因此任何能夠讀取XML格式的應用程序都可以進行數據處理。事實上,接受數據的組件不一定要是ADO .NET組件,它可以是基于一個Microsoft Visual Studio的解決方案,也可以是任何運行在其它平臺上的任何應用程序。 ADO.NET是與數據源交互的.NET技術。有許多的Data Providers,它將允許與不同的數據源交流――取決于它們所使用的協議或者數據庫。然而無論使用什么樣的Data Provi
10、der,你將使用相似的對象與數據源進行交互。SqlConnection對象管理與數據源的連接。SqlCommand對象允許你與數據源交流并發(fā)送命令給它。為了對進行快速的只“向前”地讀取數據,使用SqlDataReader。如果想使用斷開數據,使用DataSet并實現能進行讀取或者寫入數據源的SqlDataAdapter。 (三) ASP.NET簡介 ASP.NET的前身ASP技術,是在IIS 2.0上首次推出(Windows NT 3.51),當時與 ADO 1.0 一起推出,在IIS 3.0 (Windows NT 4.0)發(fā)揚光大,成為服務器端應用程序的熱門開發(fā)工具,微軟還特別為它量身
11、打造了Visual InterDev開發(fā)工具,在1994年到2000年之間,ASP技術已經成為微軟推展Windows NT 4.0平臺的關鍵技術之一,數以萬計的ASP網站也是這個時候開始如雨后春筍般的出現在網絡上。它的簡單以及高度可定制化的能力,也是它能迅速崛起的原因之一。 ASP.NET具有一下幾個重要特點: 1.強大性和適應性——ASP.NET是基于通用語言的編譯運行的程序,所以它的強大性和適應性,可以使它運行在Web應用軟件開發(fā)者的幾乎全部的平臺上。 2.簡單性和易學性——ASP.NET使運行一些很平常的任務如表單的提交客戶端的身份驗證、分布系統和網站配置變得非常簡單。 3.高效
12、可管理性——ASP.NET使用一種字符基礎的,分級的配置系統,虛擬服務器環(huán)境和應用程序的設置更加簡單,因為配置信息都保存在簡單文本中,新的設置有可能都不需要啟動本地的管理員工具就可以實現。 三、 系統分析 (一) 系統可行性分析 可行性研究的目的,就是用最小的代價在盡可能短的時間內確定是否能夠解釋決。要達到這個目的,必須分析幾種主要的可能解法的利弊,從而判斷原定的系統規(guī)模和目標是否現實,系統完成后能帶來的效益是否大到值得投資開發(fā)這個系統的程度。因此,可行性研究實質上就是要進行一次大大的壓縮簡化了的系統分析和設計的過程,也就是在較高層次上以抽象的方式進行的系統分析和設計的過程。 系統的可
13、行性分析主要包括技術上的可行性、經濟上的可行性、操作上的可行性、法律上的可行性和開發(fā)環(huán)境上的可行性。本系統的可行性分析如下: 在技術方面:隨著國內外軟件開發(fā)的日益發(fā)展壯大,各種中小企事業(yè)單位已具備獨立開發(fā)各種類型的軟件的能力,能夠滿足不同行業(yè)的特別的需求。從整個系統的技術構成上來看,它屬于一個數據庫應用類的系統。其基本操作就是對存在數據庫中的數據進行添加、刪除、查找、編輯等。所以就單純的數據庫應用來看,暫不存在太大的技術問題。因此從技術方面來看考慮本系統的可行性是可行的。 在經濟方面:現在越來越多的人都是通過網絡做許多事情,這個BBS系統易于操作,雖然對硬件要求比較高但是其安全性和管理性比
14、較好,實用性比較好,相信經濟效益也會比較高。因此從經濟方面考慮開發(fā)此系統是可行的。 在操作方面:隨著社會的發(fā)展,全民素質的提高,不論是對于電腦系統的基本操作還是對電腦的基本維護都有了一定的基礎。同時還可以配置專業(yè)的電腦維護人員來維護電腦,不必擔心電腦的鼓掌問題,且系統使用簡單明了,因此從操作方面來看此系統是可行的。 在法律方面:此系統沒有侵犯他人的個人合法利益,系統所涉及的條款與國家的現行法律沒有抵觸,不損壞國家、集體、個人的任何利益,所以在法律上是完全可行的。 開發(fā)環(huán)境可行性:開發(fā)此BBS系統需要硬件環(huán)境要求操作系統為Windows XP Professional以上系統版本,需要安裝
15、Internet信息服務,還有ASP.NET環(huán)境。目前看操作系統和軟件都不是問題,系統硬件也可以滿足,所以從開發(fā)環(huán)境上來說是可行的。 軟件需求分析工作是軟件生存周期中的重要的一步,也是決定性的一步。只有通過軟件需求分析,才能把軟件功能和性能的總體概念描述為具體的軟件需求規(guī)格說明,從而奠定軟件開發(fā)的基礎。因此,在軟件開發(fā)前應該做好對軟件的需求分析。 (二) 系統功能的需求分析 1. 基本功能 論壇的基本功能是構成論壇系統的必要功能,包括如下基本功能。 (1) 發(fā)帖。論壇最初是為了互相討論話題而誕生的,發(fā)表帖子就是表達自己的看法,與他人進行討論,因此發(fā)帖是論壇首要的功能。 (2) 瀏覽
16、帖子。發(fā)表帖子,就是供他人瀏覽查看,與他人分享自己的想法和經驗。 (3) 回帖。瀏覽了他人發(fā)帖子,想要發(fā)表自己的想法,參與討論,就可以回復這個帖子。 其實,發(fā)帖→瀏覽帖子→回帖三大功能周而復始的循環(huán)進行,就構成了論壇,每個參與論壇的人,主要目的就是發(fā)帖,查看自己已經發(fā)表的帖子,針對自己感興趣的帖子進行回復,參與討論。三大基本功能的相互關系如圖1所示。 發(fā)帖 帖子列 回帖 瀏覽帖 圖1論壇基本功能關系圖 2. 擴展功能 除以上基本功能外,其它的論壇功能都是擴展功能,包括如下功能: (1) 注冊登錄。方便經常發(fā)帖的人不需要重復填寫個人信息。 (2) 分板塊瀏覽帖子。有利于具有
17、相同興趣的用戶相互討論,不易跑題。 (3) 編輯帖子。提供給用戶更新自己發(fā)言的選擇。 (4) 刪除帖子。如果用戶發(fā)飆了不符合論壇規(guī)則的帖子,組需要管理員刪除這些帖子。 (5) 轉移帖子。論壇劃分了板塊,如果帖子內容不屬于所在板塊的關注話題,那么管理員可以選擇將此帖移動到所屬話題的板塊中去。 (6) 置頂帖子。管理員如果需要強調某些帖子的重要,有必看性,可以將這些帖子置頂。 (7) 指定精華帖。如果管理員認為某帖子內容很好,可以坐上標記,推薦給用戶看,用戶也可以只看精華帖。 (8) 搜索帖子。方便用戶查找自己需要的內容。 (9) 管理板塊。論壇板塊需要先創(chuàng)建才能被使用,管理還可以刪
18、除板塊的相關信息。 (10) 設置參數。論壇一般有一些初始化信息,比如論壇名稱,每頁顯示帖子的數量等參數信息。 (11) 管理用戶。管理員可以對論壇注冊用戶進行管理,直接添加用戶,賦予相關權限,也可以修改已注冊用戶的權限,對于違規(guī)用戶可以刪除。 刪除 作者 用戶 注冊 登錄 轉移 管理板塊 編輯 帖子 板塊 圖2論壇擴展功能圖 論壇擴展功能圖,如圖2所示。 (三) 系統簡要用例圖分析 對于訪問論壇的用戶,可分為注冊會員和為注冊的臨時用戶,這兩種用戶有著不同的權限,比如臨時用戶只能對帖子進行查看,而注冊會員除了查看帖子之外,還可以發(fā)帖,回復,查找用戶,并且可以對自
19、己的注冊資料進行修改等等。 系統的用例圖如下圖3所示:注冊用戶 臨時用戶 瀏覽帖子 發(fā)表帖子 回復帖子 修改資料 用戶搜索 管理員 用戶管理 帖子管理 論壇信息管理 圖3系統用例圖 (四) 運行環(huán)境 運行環(huán)境配置從硬件和軟件兩方面描述,所列出的都是系統所能正常運行的最低限度。而更高的硬件配置和軟件環(huán)境將會帶來更快的運行速度以及更穩(wěn)定的運行效果。 硬件要求: CPU:Intel Pentium 600MHz以上。 內存:128M以上。 磁盤安裝空間:3.2GB(完全安裝,包括 .NET Frameworks 以及 .NET IDE全
20、部開發(fā)工具和MSDN)。 顯示:800*600,256色。 軟件需求:Microsoft Windows 2000 + SP1。 Microsoft Internet Explorer 5.5 。 四、 系統總體設計 (一) 系統的設計目標 對于典型的數據庫管理系統,尤其是對像論壇這樣的數據流量特別大的網絡管理系統,必須要滿足使用方便、操作靈活等設計需求。本系統在設計時應滿足以下幾個目標: 1.采用人機對話的操作方式,界面設計美觀友好,信息查看靈活、方便、快捷、準確,數據存儲安全可靠。 2.全面展示系統內所有分類的帖子,并進行分頁顯示。 3.為用戶提供一個方便、快
21、捷的主題信息查看功能。 4.實現在線發(fā)表帖子。 5.提供登錄模塊,主要用開管理員登錄系統和發(fā)表帖子時留下發(fā)表者的信息。 6.用戶隨時都可以查看自己發(fā)表的帖子。 7.對用戶輸入的數據,系統進行嚴格的數據檢驗,盡可能排除人為的錯誤。 8.系統最大限度地實現了易維護性和易操作性。 9.系統運行穩(wěn)定安全可靠。 (二) 系統功能結構 1.前臺功能結構 查看版面下根貼 查看精華帖子 搜索帖子 查看帖子內容 用戶登錄 用戶注冊 用戶注銷 發(fā)表帖子 回復帖子 查看自己發(fā)表的帖子 BBS論壇前臺 用戶訪問論壇首頁面后,可進行查看版面
22、下根貼信息、查看自己發(fā)表的帖子、查看精華帖子、搜索帖子、查看根貼信息、用戶注冊等功能。用戶在此BBS論壇中通過注冊成為該網站的真正用戶并成功登錄系統后,可進行發(fā)表帖子、回復帖子、查看自己發(fā)表的帖子等操作。 前臺功能結構圖如圖4所示。 圖4前臺功能模塊圖 2. 后臺功能結構 圖5后臺功能模塊圖 類別管理 版面管理 用戶管理 退出管理 BBS論壇后臺 若用戶的權限為管理員,則可進入后臺,可進行論壇類別的管理、版面管理和用戶管理的操作。后臺功能結構圖如下圖5所示。 3. 系統流程圖 類別管理 版面管理 用戶管理 是否登錄 是 否 成功 進入后臺 后臺 首頁
23、 用戶 登錄 管理員 (1) 系統后臺流程圖如下圖6所示。圖6后臺功能流程圖 圖7前臺臺功能流程圖圖 (2)系統后臺流程圖如下圖7所示。查看精華帖子 搜索根貼 查看版面下根貼 查看根貼內容 發(fā)表帖子 回復帖子 提前帖子 刪除帖子 置頂帖子 置為精華貼 刪除回復帖 查看自己發(fā)表的根貼 用戶注冊 是否管理員、版主、帖子發(fā)表者 是否登錄 是否登錄 提示無權操作 游客 訪問 是 是 否 是 否 否 前臺 首頁 用戶 登錄 成功 是 五、 數據庫設計 數據庫設計是指對于一個給定的應用環(huán)境,構造最優(yōu)的數據庫模式,建
24、立數據庫及其應用系統,使之能夠有效地存儲數據,滿足各種用戶的應用需求(信息要求和處理要求)。 (一) 數據庫和設計概述 1.數據庫是信息系統的核心和基礎,把信息系統中大量的數據按一定的模型組織起來,提供存儲、維護、檢索數據的功能,使信息系統可以方便、及時、準確地從數據庫中獲得所需的信息。 2.數據庫是信息系統的各個部分能否緊密地結合在一起以及如何結合的關鍵所在。 3.數據庫設計是信息系統開發(fā)和建設的重要組成部分。 (二) 概念模型設計(E-R圖) 數據模型是是數據特征的抽象,從抽象層次上描述了系統的靜態(tài)特征、動態(tài)行為和約束條件,為數據庫系統的信息表與操作提供一個抽象的框架。描述了數
25、據結構、數據操作及數據約束。 E-R模型的基本概念 ER圖概念化地構建實體間關系的模型,這使得它們區(qū)別于數據庫模型圖。ER圖的理念是:項目所有參與者能理解ER圖。ER圖由不同實體類型、關系、特性和類型構成。實體是諸如用戶的實際對象,有時更抽象,但必須有業(yè)務意義。特性用于描述實體,關系用于實體之間 (1)實體:現實世界中的事物; (2)屬性:事物的特性; (3)聯系:現實世界中事物間的關系。實體集的關系有一對一、一對多、多對多的聯系。 用戶 M 發(fā)表 N 帖子 詳細資料 1 1 N 管理 管理員 1 N 添加 1
26、 修改 論壇 圖8系統E-R圖 本系統的E-R圖如下圖8所示: (三) 數據庫邏輯設計 圖9 BBS數據庫所包含的數據表結構圖 BlockBig(論壇區(qū)塊信息表) BlockSmall(論壇版塊信息表) Message(消息信息表) Popedom(論壇類別信息表) Post(論壇帖子信息表) PostBack(帖子回復信息表) PostType(帖子類型信息表) Users(用戶信息表) BBS 根據數據庫概念設計,可以創(chuàng)建與實體對應的數據表。本系統中所包含的數據表的結構圖如圖9所示。 本系統包括8個數據表,下面分別是這些表的結構。 1. BlockBig(
27、論壇區(qū)塊信息表),該表結構如下表表1所示。 表1 BlockBig(論壇區(qū)塊信息表) 列名 數據類型 是否主鍵 允許空值 描述 bigId int 是 否 ID自動生成 bigName varcher 否 是 區(qū)的名稱 bigDescription varcher 否 是 對區(qū)的描述 BigAdmin varcher 否 是 區(qū)管理員 bigAddtime datetime 否 是 區(qū)添加時間 2. BlockSmall(論壇版塊信息表),該表結構如下表表2所示。 表2 BlockSmall(論壇版塊信息表) 列名 數據類型
28、 是否主鍵 允許空值 描述 small_Id int 是 否 表Id自動生成 small_Name varchar 否 是 板塊名稱 small_Desciption varchar 否 是 板塊描述 small_ImgUrl varchar 否 是 板塊圖片 small_Admin int 否 是 版主 small_BigId int 否 是 所屬區(qū)號 small_Adddate datetime 否 是 加入時間 small_PostCount int 否 是 帖子數量 small_PostBackCo
29、unt int 否 是 回復帖子數量 3. Message(消息信息表),該表結構如下表表3所示。 表3 Message(消息信息表) 列名 數據類型 是否主鍵 允許空值 描述 message_id int 是 否 表Id自動生成 message_title varcher 否 是 消息題目 message_content varcher 否 是 消息內容 message_sender int 否 是 消息發(fā)送者 message_toUser int 否 是 消息接收者 message_IsRead int 否 是
30、 是否已讀 message_Adddate datetime 否 是 消息時間 4. Popedom(論壇類別信息表),該表結構如下表表4所示。 表4 Popedom(論壇類別信息表) 列名 數據類型 是否主鍵 允許空值 描述 popedom_id int 是 否 表Id自動生成 popedom_Name varchar 否 是 論壇類別名稱 5. Post(論壇帖子信息表),該表結構如下表表5所示。 表5 Post(論壇帖子信息表) 列名 數據類型 是否主鍵 允許空值 描述 post_id int 是 否 表Id自動生成
31、 post_Title varchar 否 是 帖子題目 post_Content varchar 否 是 帖子內容 post_Sender int 否 是 帖子發(fā)表人 post_SendTime datetime 否 是 帖子發(fā)送時間 post_SmallId int 否 是 所屬版塊編號 post_TypeId int 否 是 帖子類型標號 post_BrowseCount int 否 是 帖子瀏覽次數 post_BackCount int 否 是 帖子回復次數 6. PostBack(帖子回復信息表),該表結
32、構如下表表6所示。 表6 PostBack(帖子回復信息表) 列名 數據類型 是否主鍵 允許空值 描述 Postback_Id int 是 否 表Id自動生成 Postback_content varchar 否 是 帖子回復內容 Postback_Sender int 否 是 帖子回復人 Postback_SendTime datetime 否 是 帖子回復時間 Postback_PostId int 否 是 帖子標號 7. PostType(帖子類型信息表),該表結構如下表表7所示。 表7 PostType(帖子類型信息表)
33、 列名 數據類型 是否主鍵 允許空值 描述 PostType_Id int 是 否 表Id自動生成 PostType_Name varchar 否 是 帖子類型名稱 PostType_BlockSmallId int 否 是 所屬版塊標號 PostType_Adddate datetime 否 是 帖子類型創(chuàng)建時間 8. Users(用戶信息表),該表結構如下表表8所示。 表8 Users(用戶信息表) 列名 數據類型 是否主鍵 允許空值 描述 UserId int 是 否 表Id自動生成 UserName varc
34、har 否 是 用戶姓名 UserPwd varchar 否 是 用戶密碼 UserEmail varchar 否 是 用戶Email UserPic varchar 否 是 用戶照片 UserQx int 否 是 用戶權限設置 UserOnline int 否 是 是否在線 UserIp varchar 否 是 用戶ip UserLoginDate datetime 否 是 用戶注冊時間 IsAdmin int 否 是 是否管理員 六、 系統的詳細設計與實現 (一) 前臺設計與實現 由于前臺功能模塊較
35、多,而各模塊的實現過程都是類似的,所以對于系統前臺,現在只介紹系統重點設計。
圖10 安卓論壇首頁
1. 論壇系統前臺首頁頁面運行結果如下圖所示。
該頁面為論壇首頁頁面,當用戶進入本系統時會自動進入本頁面。用戶可以自行選擇自己想進的版面。
此BBS設計有母版頁存在,故論壇首頁實現代碼如下:
36、derWidth="1px" CellPadding="2" ForeColor="Black">
38、d class="style3" align="left">
<%# Eval("bigName") %>
區(qū)長:
創(chuàng)建日期:
40、id_study.aspx?big_id=<%# Eval("bigId") %>'><%#Eval ("bigDescription") %>
41、……… public partial class login : System.Web.UI.Page { //獲取數據庫連接字符串 DataHelper helper = new DataHelper(); protected void Page_Load(object sender, EventArgs e) { } protected void User_login_Click(object sender, EventArgs e) { String Name = UserName
42、.Text; string Pwd = User_pwd.Text; String user_ip=Request.UserHostAddress;//獲取用戶IP地址信息 if (Name == "" || Pwd == "") { String alerts = "用戶名或密碼不能為空!"; Response.Write(""); } el
43、se { VldUserLogin(Name,Pwd,user_ip); } } public void VldUserLogin(string strUserName, string strPassWord, string ip)//驗證并修改個別信息 { string strUserId = null; string isadmin = null; int UserQx=0; String connstring = helper.Getstr()
44、; String strSql = "SELECT UserId FROM Users WHERE UserName='" + strUserName + "' and UserPwd='" + strPassWord + "'";//根據用戶名和密碼來查詢用戶的ID String strSql2 = "SELECT IsAdmin FROM Users WHERE UserName='" + strUserName + "' and UserPwd='" + strPassWord + "'";//根據用戶名和密碼來查詢用戶是否為管理的的標志
45、 String strSql3 = "SELECT UserQx FROM Users WHERE UserName='" + strUserName + "' and UserPwd='" + strPassWord + "'";//查詢用戶的權限 string strSql4 = "update Users set UserOnline='" + 1 + "',UserIp='" + ip + "'WHERE UserName='" + strUserName + "' and UserPwd='" + strPassWord + "'"; SqlC
46、onnection conn = new SqlConnection(connstring); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn;//設置連接 SqlDataReader reader; try { conn.Open(); cmd.CommandText = strSql; reader = cmd.ExecuteReader();
47、 if (reader.Read()) { strUserId =reader["UserId"].ToString();//獲取編號UserId reader.Close(); if (strUserId.Equals("")) { String alerts = "該用戶不存在!"; Response.Write(""); } else { cmd.CommandText = strSql2; reader = cmd.ExecuteReader(); if (reader.Read()) {
49、 isadmin = reader["IsAdmin"].ToString();//獲取是否是管理員 reader.Close(); } cmd.CommandText = strSql3; reader = cmd.ExecuteReader(); if (reader.Read())
50、 { UserQx = int.Parse(reader["UserQx"].ToString());//獲取權限 reader.Close(); } cmd.CommandText = strSql4; int result = cmd.ExecuteNonQuery();//修改部分信息 Session["user
51、_qx"] = UserQx;//往Session里賦值 Session["user_id"] = strUserId; Session["user_name"] = strUserName; //是否是管理員,用于前臺主框架是否顯示管理 Session["IsAdmin"] = isadmin; Response.Redirect("and
52、roid_index.aspx");//成功跳轉 } } } catch(Exception ex) { Response.Write(" 意外關閉"); conn.Close(); } finally { conn.Close(); } } } 圖12 安卓論壇注冊頁面 3. 該論壇注冊
53、頁面如下圖所示: 該頁面為用戶注冊頁面,用戶按要求填完后可進行注冊,若用戶想添加頭像則可以輸入頭像網絡地址或頭像本地所在位置,進行頭像上傳。若點擊重置則清空所有文本框內容,進行重新輸入。 其頁面實現代碼如下所示: …… public partial class Jion : System.Web.UI.Page { //獲取數據庫連接字符串 DataHelper helper = new DataHelper(); private string user_Name1, pwd1, user_email1,ip,pic; int id = 0;
54、 public void Add_user() { string strconnection = helper.Getstr(); string selectSQL = "select max(UserId) as MaxId from Users"; SqlConnection conn = new SqlConnection(strconnection); SqlCommand cmd = new SqlCommand(selectSQL, conn); SqlDataReader
55、reader; try { conn.Open(); reader = cmd.ExecuteReader(); if (reader.Read()) { id = int.Parse(reader["MaxId"].ToString()) + 1;//取標號最大值 Item(); Response.Redirect("login.as
56、px"); } reader.Close(); } catch (Exception ex) { conn.Close(); } finally { conn.Close(); } conn.Close(); } public void Item() //插入元素 { string
57、strconnection = helper.Getstr(); user_Name1 = user_name.Text; pwd1 = pwd.Text; pic = UpImg1.GetFilePath; user_email1 = user_email.Text; String insert = "insert into Users(UserId,UserName,UserPwd,UserEmail,UserPic)values('" + id + "','" + user_Name1 + "
58、','" + pwd1 + "','" + user_email1 + "','" + pic + "')"; SqlConnection conn = new SqlConnection(strconnection); try { conn.Open(); SqlCommand cmd = new SqlCommand(insert, conn); int result=cmd.ExecuteNonQuery();
59、 } catch (Exception ex) { conn.Close(); } finally { conn.Close(); } conn.Close(); } protected void Page_Load(object sender, EventArgs e) { } protected void Button2_Click(object sender, EventA
60、rgs e) //注冊按鈕觸發(fā)事件 { if ((user_name.Text == "") || (pwd.Text == "")) //判斷用戶名和密碼是否為空 { string alerts = "用戶名和密碼不能為空!"; Response.Write(""); } else if (pwd.Text != rpwd.Text) {
61、 string alerts = "兩次輸入的密碼不一致!"; Response.Write(""); } else { Add_user(); } } protected void Button1_Click(object sender, EventArgs e) { //檢測該用戶是否
62、已經存在 string sql = "select UserId from Users where UserName='"+user_name.Text+"'"; string strconnection = helper.Getstr(); SqlConnection conn = new SqlConnection(strconnection); SqlCommand cmd = new SqlCommand(sql, conn); SqlDataReader reader; try
63、 { conn.Open(); reader=cmd.ExecuteReader(); if (reader.Read()) { reader.Close(); Response.Write(""); } else { Response.W
64、rite(""); } } catch(Exception ex) { conn.Close(); } finally { conn.Close(); } } } 圖13 安卓論壇發(fā)帖頁面 4. 該論壇發(fā)帖頁面如下圖所示。 該頁面為用戶發(fā)表帖子頁面,若用戶未登錄則自動跳轉到用戶登錄
65、界面,提示用戶登錄,若用戶已登錄,則可以進行發(fā)帖,按重置按鈕后則清空所有文本框。 該論壇發(fā)帖頁面后臺實現代碼如下所示: …… public partial class SentPost : System.Web.UI.Page { //獲取數據庫連接字符串 DataHelper helper = new DataHelper(); protected void Page_Load(object sender, EventArgs e) { //驗證是否有用戶登錄 if (Session["user_id"] =
66、= null) { Response.Redirect("login.aspx"); } } //發(fā)表提交按鈕事件 protected void Button1_Click(object sender, EventArgs e) { //獲取表單信息 int PostType = int.Parse(posttype_ddl.SelectedValue); string strTitle = txt_title.Text; int UserId = int.Parse(Session["user_id"].ToString()); //內容 string strContent = nr.Text; int PostSmall_Id = int.Parse(Request.QueryString["Small_Id"]);
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。