高校學(xué)工輔導(dǎo)員資料管理系統(tǒng)的設(shè)計(jì)和開(kāi)發(fā)_第1頁(yè)
高校學(xué)工輔導(dǎo)員資料管理系統(tǒng)的設(shè)計(jì)和開(kāi)發(fā)_第2頁(yè)
高校學(xué)工輔導(dǎo)員資料管理系統(tǒng)的設(shè)計(jì)和開(kāi)發(fā)_第3頁(yè)
高校學(xué)工輔導(dǎo)員資料管理系統(tǒng)的設(shè)計(jì)和開(kāi)發(fā)_第4頁(yè)
高校學(xué)工輔導(dǎo)員資料管理系統(tǒng)的設(shè)計(jì)和開(kāi)發(fā)_第5頁(yè)
已閱讀5頁(yè),還剩35頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第1章引言1.1背景本課題題目為:高校學(xué)工平臺(tái)系統(tǒng),目的是為輔導(dǎo)員提供一個(gè)保存文件,個(gè)人照片的一個(gè)網(wǎng)站。眾所周知傳統(tǒng)的手工管理資料需要用不同的文件袋子來(lái)存放不同的文件,沒(méi)有具體的數(shù)據(jù)庫(kù)可提供查詢,對(duì)于這些重要文件有哪些、放在什么地方、什么時(shí)候用過(guò)的還都不知道。當(dāng)用戶即輔導(dǎo)員要看文件的時(shí)候卻因?yàn)橛幸淮蠖训奈募旁谝黄?,無(wú)法很快的找到自己想要的文件,這樣要浪費(fèi)很多的時(shí)間。并且手工來(lái)管理這些重要文件也要耗費(fèi)不少的人力,物力資源,也不符合經(jīng)濟(jì)效益原則。而隨著信息化的發(fā)展及計(jì)算機(jī)技術(shù)的廣泛運(yùn)用,高等學(xué)校各部門(mén)的重要文件管理也可以考慮利用計(jì)算機(jī)管理系統(tǒng)來(lái)代替?zhèn)鹘y(tǒng)的手工管理。設(shè)計(jì)高校學(xué)工平臺(tái)系統(tǒng)可以建立各種信息數(shù)據(jù)庫(kù),以實(shí)現(xiàn)高校對(duì)輔導(dǎo)員用戶基本信息的管理,文件管理。輔導(dǎo)員也可以通過(guò)本系統(tǒng)方便的查找自己存著的重要文件,到用時(shí)就很方便了。同時(shí)此系統(tǒng)還為高校輔導(dǎo)員提供一個(gè)存放自己重要照片的一個(gè)平臺(tái),因?yàn)楝F(xiàn)在由于數(shù)碼相機(jī)的普及,輔導(dǎo)員自己電腦上的照片肯定會(huì)越來(lái)越多,有了此系統(tǒng)就解決了這個(gè)問(wèn)題,同時(shí)還能跟其他的輔導(dǎo)員分享自己的作品,交流攝影經(jīng)驗(yàn)等等。通過(guò)畢業(yè)設(shè)計(jì)可以讓自己進(jìn)一步的掌握系統(tǒng)開(kāi)發(fā)的理論和方法,并運(yùn)用于實(shí)際的操作之中。設(shè)計(jì)高校學(xué)工平臺(tái)系統(tǒng)還可以鍛煉自己對(duì)開(kāi)發(fā)一個(gè)小型網(wǎng)站的能力,讓自己形成一種獨(dú)立思考的習(xí)慣和周全的想象各種事情的能力,給自己將來(lái)的工作帶來(lái)一些經(jīng)驗(yàn)。同時(shí),設(shè)計(jì)這個(gè)高校學(xué)工平臺(tái)系統(tǒng)由傳統(tǒng)的手工來(lái)管理重要文件轉(zhuǎn)變?yōu)橛?jì)算機(jī)管理,方便輔導(dǎo)員查找和使用需要的各種重要文件,可以很大程度上提高輔導(dǎo)員的工作效率。因此,設(shè)計(jì)這個(gè)高校學(xué)工平臺(tái)系統(tǒng)還是很有必要的。1.2研究?jī)?nèi)容及擬解決問(wèn)題研究的基本內(nèi)容主要是基于的高校學(xué)工平臺(tái)系統(tǒng),以便能更好的為高校學(xué)工提供方便。在這個(gè)系統(tǒng)中主要需要研究數(shù)據(jù)庫(kù)的設(shè)計(jì)、管理員后臺(tái)的設(shè)計(jì),用戶設(shè)計(jì)以及他們之間的聯(lián)系。因?yàn)樵谶@個(gè)系統(tǒng)中,用戶需要存的東西比較多,所以要進(jìn)行分類(lèi)管理,因此在創(chuàng)建數(shù)據(jù)庫(kù)的時(shí)候要多建好幾張表,在創(chuàng)建的時(shí)候如何搞好表與表之間的的關(guān)系式一個(gè)比較艱巨的任務(wù),因?yàn)橹挥凶龅竭@樣,把他們的關(guān)系都搞清楚了才能在以后做的過(guò)程中簡(jiǎn)單化。管理員后臺(tái)的設(shè)計(jì)主要要做到后臺(tái)的安全性和可靠性以及操作的簡(jiǎn)單易懂性,這樣才能把錯(cuò)誤減小。用戶的設(shè)計(jì)主要是實(shí)現(xiàn)用戶的注冊(cè),實(shí)現(xiàn)用戶可以上傳自己的照片和他們的重要文件,還要實(shí)現(xiàn)用戶在上傳東西的時(shí)候自主進(jìn)行分類(lèi)。用戶可以對(duì)其他用戶上傳的照片進(jìn)行評(píng)論,交流,搜索。用戶之間可以添加好友等等。擬解決的主要問(wèn)題主要分為五大方面:1.數(shù)據(jù)庫(kù)方面:對(duì)系統(tǒng)進(jìn)行需求分析,初步設(shè)計(jì)用戶信息表、照片表(分為個(gè)性展示表和風(fēng)景表)、評(píng)論表、文件表(文件有可能比較多,要分成幾個(gè)不同的表,像論文集表、參考資料表等等)。2.管理員管理方面:實(shí)現(xiàn)對(duì)注冊(cè)用戶資料的管理,用戶上傳照片的管理,看上傳的照片是否符合國(guó)家規(guī)定,用戶評(píng)論是否符合國(guó)家規(guī)定等等,即對(duì)評(píng)論,照片進(jìn)行審核。3.用戶信息管理方面:實(shí)現(xiàn)用戶的注冊(cè),其中包括登錄名,登錄密碼,郵箱等基本信息的修改和更新。注冊(cè)成功后,根據(jù)用戶權(quán)限可以上傳照片、上傳自己的重要文件。對(duì)其他用戶的照片進(jìn)行評(píng)論。4.搜索方面:實(shí)現(xiàn)用戶可以根據(jù)關(guān)鍵字,標(biāo)題搜索等等。5.BBS方面:實(shí)現(xiàn)注冊(cè)用戶可以與其他用戶進(jìn)行交流,同時(shí)實(shí)現(xiàn)用戶在個(gè)人中心中可以對(duì)自己的信息進(jìn)行修改,包括密碼,郵箱,QQ號(hào)碼,對(duì)自己上傳照片進(jìn)行描述等等。

第2章工具軟件與技術(shù)基礎(chǔ)2.1編程開(kāi)發(fā)環(huán)境和相關(guān)工具本系統(tǒng)采用MicrosoftVisualStudio2005為開(kāi)發(fā)環(huán)境以,sql2005為數(shù)據(jù)庫(kù)基礎(chǔ),ASP.NET為開(kāi)發(fā)語(yǔ)言。主要是在開(kāi)發(fā)環(huán)境中以新建網(wǎng)站來(lái)進(jìn)行開(kāi)發(fā)。技術(shù)路線主要是利用SQLServer來(lái)存儲(chǔ)數(shù)據(jù),通過(guò)新建表的形式把數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)庫(kù)中,SQLServer是一個(gè)功能很強(qiáng)大的數(shù)據(jù)庫(kù),足以用以本網(wǎng)站的開(kāi)發(fā)。前臺(tái)主要是通過(guò)VisualStudio2005里面的控件來(lái)進(jìn)行頁(yè)面設(shè)置和功能實(shí)現(xiàn)。后臺(tái)和前臺(tái)的聯(lián)系主要是通過(guò)編碼來(lái)把數(shù)據(jù)在前臺(tái)和后臺(tái)的傳遞。2.2編程環(huán)境2.2.1ASP.NETASP.net是把基于通用語(yǔ)言的程序在服務(wù)器上運(yùn)行。不像以前的ASP即時(shí)解釋程序,而是將程序在服務(wù)器端首次運(yùn)行時(shí)進(jìn)行編譯。ASP.net構(gòu)架是可以用Microsoft(R)公司最新的產(chǎn)品VisualS開(kāi)發(fā)環(huán)境進(jìn)行開(kāi)發(fā),WYSIWYG(所見(jiàn)即為所得)的編輯。因?yàn)锳SP.net是基于通用語(yǔ)言的編譯運(yùn)行的程序,所以它的強(qiáng)大性和適應(yīng)性,可以使它運(yùn)行在Web應(yīng)用軟件開(kāi)發(fā)者的幾乎全部的平臺(tái)上。通用語(yǔ)言的基本庫(kù),消息機(jī)制,數(shù)據(jù)接口的處理都能無(wú)縫的整合到ASP.net的Web應(yīng)用中。[3]ASP.net同時(shí)也是language-independent語(yǔ)言獨(dú)立化的,所以,你可以選擇一種最適合你的語(yǔ)言來(lái)編寫(xiě)你的程序,或者把你的程序用很多種語(yǔ)言來(lái)寫(xiě),現(xiàn)在已經(jīng)支持的有C#(C++和Java的結(jié)合體),VB,Jscript。將來(lái),這樣的多種程序語(yǔ)言協(xié)同工作的能力保護(hù)您現(xiàn)在的基于COM+開(kāi)發(fā)的程序,能夠完整的移植向ASP.net。ASP.NET一般分為兩種開(kāi)發(fā)語(yǔ)言,VB.NET和C#,在本系統(tǒng)中,我采用的是C#語(yǔ)言。用ASP.NET開(kāi)發(fā)的優(yōu)點(diǎn)有:1.使用.NET提供的所有類(lèi)庫(kù),可以執(zhí)行以往ASP所不能實(shí)現(xiàn)的許多功能。2.引入了服務(wù)器端控件的概念,這樣使開(kāi)發(fā)交互式網(wǎng)站更加方便。3.引入了ADO.NET數(shù)據(jù)訪問(wèn)接口,大大提高了數(shù)據(jù)訪問(wèn)效率。4.提供ASP.NET的可視化開(kāi)發(fā)環(huán)境VisualStudio.NET,進(jìn)一步提高編程效率。[10]5.保持對(duì)ASP的全面兼容。ASP.NET運(yùn)行速度快。6.ASP.NET全面支持面向?qū)ο蟪绦蛟O(shè)計(jì)。ASP.NET的缺點(diǎn)是:1.ASP.NET運(yùn)行環(huán)境要求比較高,不僅需要IIS的支持,還需要.NETFremeworkSDK。2.相對(duì)于ASP,學(xué)習(xí)起來(lái)稍微復(fù)雜。[7]另外,ASP.NET優(yōu)點(diǎn)還包括了ASP.NET啟用了分布式應(yīng)用程序的兩個(gè)功能:Web窗體和XMLWeb服務(wù)。[9]相同的配置和調(diào)試基本結(jié)構(gòu)支持這兩種功能。Web窗體技術(shù)使您建立強(qiáng)大的基于窗體的網(wǎng)頁(yè)。[6]Web窗體頁(yè)面使用可重復(fù)使用的內(nèi)建組件或自定義組件以簡(jiǎn)化頁(yè)面中的代碼。[2]使用ASP.NET創(chuàng)建的XMLWeb服務(wù)可使您遠(yuǎn)程訪問(wèn)服務(wù)器。使用XMLWeb服務(wù),商家可以提供其數(shù)據(jù)或商業(yè)規(guī)則的可編程接口,之后可以由客戶端和服務(wù)器端應(yīng)用程序獲得和操作。通過(guò)在客戶端/服務(wù)器和服務(wù)器/服務(wù)器方案中的防火墻范圍內(nèi)使用標(biāo)準(zhǔn)(如XML消息處理和HTTP),XMLWeb服務(wù)可啟用數(shù)據(jù)交換。任何語(yǔ)言編寫(xiě)的且運(yùn)行在任何操作系統(tǒng)上的程序都能調(diào)用XMLWeb服務(wù)。[8]2.3相關(guān)工具2.3.1SQLServer2005SQLServer2005則是目前最流行的數(shù)據(jù)庫(kù)之一,操作簡(jiǎn)單,功能強(qiáng)大,而VisualStadio2008,是用來(lái)開(kāi)發(fā)和運(yùn)行ASP.NET網(wǎng)站。ASP.NET(基于.NETFramework的ActiveServerPages)是微軟公司的一項(xiàng)技術(shù),是一種使嵌入網(wǎng)頁(yè)中的腳本可由因特網(wǎng)服務(wù)器執(zhí)行的服務(wù)器端腳本技術(shù),運(yùn)行于IIS之中的程序。SQLServer是一個(gè)后臺(tái)數(shù)據(jù)庫(kù)管理系統(tǒng),它功能強(qiáng)大操作簡(jiǎn)便,日益為廣大數(shù)據(jù)庫(kù)用戶所喜愛(ài)。越來(lái)越多的開(kāi)發(fā)工具提供了與SQLServer的接口。SQLServer是一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開(kāi)發(fā)的。SQLSERVER是大數(shù)據(jù)庫(kù),它也屬于中型數(shù)據(jù)庫(kù),應(yīng)用于中小型企業(yè)。SQLSERVER的分布式、復(fù)制、全文檢索、DTS都可以滿足中型的應(yīng)用。SQLSERVER的數(shù)據(jù)存儲(chǔ)在它本身的文件內(nèi),在安裝目錄下的DATA目錄下,有和數(shù)據(jù)庫(kù)同名的數(shù)據(jù)文件和日志文件組成。一般,在WINDOWS體系下,中小型的應(yīng)用都使用SQLSERVERS。此外,SQLSERVER支持存儲(chǔ)國(guó)恥、觸發(fā)器、自定義函數(shù)等操作;安全性、并發(fā)控制能力、數(shù)據(jù)挖掘、聯(lián)機(jī)操作等方面其他數(shù)據(jù)庫(kù)是無(wú)法超越的。[1]

第3章系統(tǒng)總體設(shè)計(jì)3.1系統(tǒng)需求分析需求分析的目標(biāo)是確定系統(tǒng)必須完成哪些工作,也就是說(shuō)對(duì)目標(biāo)系統(tǒng)提出完整的、準(zhǔn)確的、清晰的、具體的要求,它是系統(tǒng)分析通向系統(tǒng)設(shè)計(jì)階段的必經(jīng)之路。在需求分析的過(guò)程中,很重要的一部分就是用數(shù)據(jù)圖和數(shù)據(jù)字典來(lái)描述系統(tǒng),然后編寫(xiě)規(guī)格的說(shuō)明書(shū)。需求分析的好壞直接影響整個(gè)工程的成敗。[5]本課題的最終目標(biāo)是實(shí)現(xiàn)學(xué)工之家的建設(shè)、即輔導(dǎo)員可以通過(guò)注冊(cè)的一個(gè)賬號(hào)登陸網(wǎng)站,可以將自己的某些重要文件和一些照片上傳到網(wǎng)站上,完成保存。同時(shí)在這個(gè)網(wǎng)站上可以對(duì)別的輔導(dǎo)員的照片進(jìn)行評(píng)論等等。具體的需求如下:輔導(dǎo)員在線注冊(cè)一個(gè)會(huì)員賬號(hào),且這個(gè)會(huì)員賬號(hào)是唯一的,用這個(gè)賬號(hào)登錄網(wǎng)站,進(jìn)去后可以修改自己的信息。同時(shí)可以查看自己上傳的文件和照片。同時(shí)也可以上傳文件和上傳照片。在這個(gè)網(wǎng)站的首頁(yè)可以看到學(xué)校的最新通告,最新上傳的文件、照片等等。同時(shí)用戶可以根據(jù)關(guān)鍵字和名稱(chēng)來(lái)實(shí)現(xiàn)對(duì)照片的搜索。此外,此外有一個(gè)管理員來(lái)管理所有的用戶,和上傳學(xué)校的通告,來(lái)管理評(píng)論留言內(nèi)容是否符合國(guó)家的規(guī)定。則系統(tǒng)根據(jù)用戶登錄時(shí)的登錄名判斷是普通用戶還是管理員用戶。若是管理員,則跳轉(zhuǎn)到管理員界面,在管理員界面列出了所有用戶的基本信息,如用戶名啊,何時(shí)注冊(cè)的等等。在這個(gè)界面上還有評(píng)論管理,留言管理,文件管理等等,管理員可以根據(jù)是否符合有關(guān)規(guī)定來(lái)決定是否刪除某條評(píng)論或留言,亦或是刪除這個(gè)用戶。3.2系統(tǒng)功能根據(jù)需求分析,本課題要實(shí)現(xiàn)的功能有:1.注冊(cè)功能;2.登錄功能;3.修改密碼功能;4.留言板功能;5.上傳照片、文件功能,下載功能;6.搜索功能;7.對(duì)照片進(jìn)行評(píng)論功能;由此,系統(tǒng)可以分為七個(gè)模塊,分別是:1.用戶注冊(cè);2.用戶登陸;3.用戶個(gè)人中心頁(yè)面;4.上傳照片、文件頁(yè)面;5.照片評(píng)論、網(wǎng)站留言頁(yè)面;6.下載頁(yè)面;7.管理員頁(yè)面各功能模塊具體的聯(lián)系如下圖3-1:用戶注冊(cè)用戶登陸用戶注冊(cè)用戶登陸普通用戶頁(yè)面管理員的頁(yè)面下載文件留言,評(píng)論照片下載文件留言,評(píng)論照片管理用戶上傳照片,文件搜索文件修改頭像,找回密碼上傳公告照片,文件管理評(píng)論,留言管理圖3-1功能模塊圖3.3數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)3.3.1數(shù)據(jù)庫(kù)概念模型設(shè)計(jì)在數(shù)據(jù)庫(kù)的設(shè)計(jì)中,首先要注意命名的規(guī)范,其次就是要注意數(shù)據(jù)的一致性和完整性,盡可能的降低數(shù)據(jù)的冗余,當(dāng)然如果數(shù)據(jù)冗余度低,數(shù)據(jù)的完整性容易得到保證,但增加了表間連接查詢的操作,所以合理的數(shù)據(jù)冗余也是必要的。可使用規(guī)則和約束來(lái)對(duì)數(shù)據(jù)的有效性驗(yàn)證。[4]進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)首先必須準(zhǔn)確了解與分析用戶需求(包括數(shù)據(jù)與處理)。數(shù)據(jù)庫(kù)的需求分析是整個(gè)設(shè)計(jì)過(guò)程的基礎(chǔ),是最困難、最耗費(fèi)時(shí)間的一步。作為地基的需求分析是否做得充分與準(zhǔn)確,決定了在其上構(gòu)建數(shù)據(jù)大廈的速度與質(zhì)量。數(shù)據(jù)分析做得不好,甚至?xí)?dǎo)致整個(gè)數(shù)據(jù)設(shè)計(jì)翻工重做。本系統(tǒng)采用SQLServer2005數(shù)據(jù)庫(kù),根據(jù)系統(tǒng)需求分析來(lái)看,本系統(tǒng)數(shù)據(jù)表如下:用戶表:存放用戶的相關(guān)信息;文件表:存放用戶上傳的文件;照片表:存放用戶上傳的照片;評(píng)論表:存放用戶對(duì)照片進(jìn)行評(píng)論的相關(guān)信息;留言表:存放用戶在網(wǎng)站上留言的相關(guān)信息公告表:存放管理員上傳的學(xué)校通告。3.3.2數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)表3-1數(shù)據(jù)庫(kù)表說(shuō)明表名作用用戶表存儲(chǔ)用戶基本信息文件表存儲(chǔ)文件信息公告表存儲(chǔ)公告信息照片表存儲(chǔ)照片信息留言表存儲(chǔ)留言信息評(píng)論表存儲(chǔ)評(píng)論信息各種表都是根據(jù)網(wǎng)站的需要來(lái)建的,下面主要分析各種表的結(jié)構(gòu)和功能。表3-2用戶信息表字段名中文描述是否允許為空類(lèi)型備注userID編號(hào)否int(自增值1)權(quán)限號(hào)userlever級(jí)別是int用戶權(quán)限Uname名字是varchar用戶名稱(chēng)Upassword密碼是varchar用戶密碼Uemail郵箱是varchar用戶郵箱HeadPicture頭像是varchar用戶頭像myquestion我的問(wèn)題是varchar問(wèn)題myanswer答案是varchar答案num評(píng)論數(shù)是int評(píng)論數(shù)表3-3文件信息表字段名中文描述是否允許為空類(lèi)型備注wid序號(hào)否int(自增值1)文件序號(hào)wname文件名是nvarchar(50)文件名wtime上傳時(shí)間是datetime上傳時(shí)間SPath存儲(chǔ)路徑是nvarchar(50)存儲(chǔ)路徑Uname上傳者是nvarchar(50)上傳者表3-4公告信息表字段名中文描述是否允許為空類(lèi)型備注id序號(hào)否int(自增值1)公告序號(hào)title題目是nvarchar(50)公告題目context內(nèi)容是nvarchar(MAX)公告內(nèi)容time上傳時(shí)間是datetime上傳時(shí)間表3-5照片信息表字段名中文描述是否允許為空類(lèi)型備注PhotoID序號(hào)否int(自增值1)照片序號(hào)Uname上傳者是nvarchar(50)上傳者Caption照片標(biāo)題是nvarchar(50)照片標(biāo)題Imageurl存儲(chǔ)路徑是nvarchar(50)存儲(chǔ)路徑Time上傳時(shí)間是datetime上傳時(shí)間表3-4留言信息表字段名中文描述是否允許為空類(lèi)型備注mid條數(shù)否int(自增值1)留言序號(hào)message留言內(nèi)容是nvarchar(50)留言內(nèi)容Uname留言者是nvarchar(50)留言者time留言時(shí)間是datetime留言時(shí)間answer回復(fù)內(nèi)容是nvarchar(50)回復(fù)內(nèi)容表3-4評(píng)論信息表字段名中文描述是否允許為空類(lèi)型備注pid序號(hào)否int(自增值1)評(píng)論序號(hào)Imageurl存儲(chǔ)路徑是nvarchar(50)存儲(chǔ)路徑composition評(píng)論內(nèi)容是nvarchar(50)評(píng)論內(nèi)容time評(píng)論時(shí)間是datetime評(píng)論時(shí)間Uname評(píng)論人是nvarchar(50)評(píng)論人answer回復(fù)內(nèi)容是nvarchar(50)回復(fù)內(nèi)容

第4章界面設(shè)計(jì)與流程圖4.1界面設(shè)計(jì)圖4-1首頁(yè)圖4-2留言板首先,使用PhotoshopCS4設(shè)計(jì)好本系統(tǒng)的頁(yè)面,然后切割圖片,再使用DreamweaverCS4對(duì)頁(yè)面進(jìn)行排版,最后將頁(yè)面相關(guān)HTML代碼復(fù)制到VS2005中進(jìn)行編程。4.2流程圖注冊(cè)賬號(hào)注冊(cè)賬號(hào)使用賬號(hào)登錄系統(tǒng)打開(kāi)系統(tǒng)首頁(yè)個(gè)人中心上傳照片、文件下載文件修改頭像查看照片,文件圖4-3用戶使用流程圖進(jìn)入管理員頁(yè)面進(jìn)入管理員頁(yè)面管理員登錄用戶信息管理照片、文件管理公告上傳留言、評(píng)論管理圖4-4管理員用戶使用流程圖

第5章系統(tǒng)實(shí)現(xiàn)5.1修改頭像圖5-1首頁(yè)首頁(yè)主要分為五個(gè)部分如圖所示,網(wǎng)站公告,是關(guān)于這個(gè)網(wǎng)站的;最新留言則是用戶的最新留言;學(xué)校公告是管理員上傳的公告;還有就是照片列表和文件列表。實(shí)現(xiàn)代碼如下:SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";conn.Open();stringstrpx="selectTop6titlefrom公告orderbytimedesc";//文件顯示的時(shí)候按照時(shí)間順序來(lái)顯示SqlCommandcom=newSqlCommand(strpx,conn);SqlDataReaderdr=com.ExecuteReader();LinkButton[]A=newLinkButton[5];//定義一個(gè)linKButton數(shù)組A[0]=LinkButton1;A[1]=LinkButton2;A[2]=LinkButton3;A[3]=LinkButton4;A[4]=LinkButton5;inti=0;while(dr.Read())//讀取文件名{A[i].Text=dr["title"].ToString();i++;}conn.Close();其他三塊最新留言,照片列表,文件列表的顯示和以上代碼大同小異。頁(yè)面之間的傳值都是用Session的。5.2新用戶注冊(cè)圖5-2注冊(cè)頁(yè)面查看用戶名是否存在,代碼如下staticboolbCheck;voidCheckName(){SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";conn.Open();//打開(kāi)數(shù)據(jù)庫(kù)stringstrsql="select*from用戶表whereUname='"+TextBox1.Text+"'";SqlCommandCom=newSqlCommand(strsql,conn);SqlDataReadersqlreader=Com.ExecuteReader();if(sqlreader.Read()){bCheck=false;}else{bCheck=true;}sqlreader.Close();conn.Close();}//如果用戶名存在了,就會(huì)跳出此用戶名已存在的對(duì)話框。注冊(cè)功能的相關(guān)代碼如下:CheckName();if(!bCheck)//判斷是否存在此用戶名{Response.Write("<scriptlanguage=javascript>alert('用戶名已被占用,請(qǐng)選擇其他名稱(chēng)');</script>");return;}SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";stringstrVal="'"+TextBox1.Text+"','"+TextBox2.Text+"','"+TextBox3.Text+"'";stringstrIns="insertinto用戶表(Uname,Upassword,Uemail)values("+strVal+")";//把用戶插入到用戶表中SqlCommandinsCom=newSqlCommand(strIns,conn);SqlDataAdapterda=newSqlDataAdapter();conn.Open();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();Response.Write("<scriptlanguage=javascript>alert('注冊(cè)成功,請(qǐng)單擊返回進(jìn)入登陸頁(yè)面');</script>");Response.Redirect("main.aspx");conn.Close();當(dāng)用戶填寫(xiě)完畢點(diǎn)擊注冊(cè)后,即將注冊(cè)信息數(shù)據(jù)寫(xiě)入數(shù)據(jù)庫(kù),帳號(hào)、密碼既可以用來(lái)登錄網(wǎng)站,普通用戶注冊(cè)時(shí)其userID的默認(rèn)值為0,管理員的userID為1。注冊(cè)成功后就跳入登錄界面。新注冊(cè)用戶的頭像是默認(rèn)的,如果要修改可以到個(gè)人中心進(jìn)行修改。5.3登錄,密碼初始化用戶在登錄界面進(jìn)行登陸,由后臺(tái)來(lái)處理登陸信息。部分代碼如下://建立數(shù)據(jù)庫(kù)連接SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";stringstrSecPwd=FormsAuthentication.HashPasswordForStoringInConfigFile(password.Text,"md5");//密碼用MD5算法進(jìn)行加密保存stringstrsql="select*from用戶表whereUname='"+name.Text+"'andUpassword='"+strSecPwd+"'";conn.Open();SqlCommandcmd=newSqlCommand(strsql,conn);SqlDataReaderdr=cmd.ExecuteReader();if(dr.Read()){Session["Userlever"]=dr["Userlever"];Session["name"]=name.Text;if((int)Session["Userlever"]==1)//根據(jù)用戶級(jí)別的不同,跳入不同的頁(yè)面{Response.Redirect("admin.aspx");}else{Response.Redirect("mine.aspx");}}elseResponse.Write("<scriptlanguage=javascript>alert('登陸失敗');</script>");dr.Close();conn.Close();后臺(tái)首先檢查用戶輸入的驗(yàn)證碼是否正確,若不正確,則提示用戶驗(yàn)證碼輸入錯(cuò)誤;若正確,則將從表單中提取出來(lái)的用戶名同數(shù)據(jù)庫(kù)中取出來(lái)的用戶名進(jìn)行比較,若無(wú)相等,說(shuō)明登陸的用戶名是非法的,若有相等,則從數(shù)據(jù)庫(kù)中取出該用戶名的密碼,并與輸入的密碼相比較,若不相等,則說(shuō)明登陸密碼輸入錯(cuò)誤,若相等,則登陸成功!管理員和普通用戶根據(jù)他們的userlever進(jìn)入到不同的頁(yè)面。在初始化密碼頁(yè)面,必須同時(shí)答對(duì)問(wèn)題和密碼,否則不能初始化。具體代碼如下:SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";stringstrSecPwd=FormsAuthentication.HashPasswordForStoringInConfigFile(TextBox2.Text,"md5");stringstrSecPwd1=FormsAuthentication.HashPasswordForStoringInConfigFile(Label4.Text,"md5");stringstrsql="select*from用戶表whereUname='"+TextBox1.Text+"'";conn.Open();SqlCommandcmd=newSqlCommand(strsql,conn);SqlDataReaderdr=cmd.ExecuteReader();if(dr.Read()){i=dr[6].ToString().CompareTo(TextBox3.Text);j=dr[7].ToString().CompareTo(strSecPwd);if(i==0&&j==0){SqlConnectionconn1=newSqlConnection();conn1.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";stringstrSecPwd2=FormsAuthentication.HashPasswordForStoringInConfigFile((123456).ToString(),"md5");stringstrsql1="update用戶表setUpassword='"+strSecPwd2+"'whereUname='"+TextBox1.Text+"'";SqlCommandinsCom=newSqlCommand(strsql1,conn1);SqlDataAdapterda=newSqlDataAdapter();conn1.Open();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();conn1.Close();Response.Write("<scriptlanguage=javascript>alert('你的密碼已初始化為123456!');</script>");}elseif(i!=0&&j==0){Response.Write("<scriptlanguage=javascript>alert('密碼提示問(wèn)題錯(cuò)誤!');</script>");TextBox3.Text="";}elseif(i!=0&&j!=0){Response.Write("<scriptlanguage=javascript>alert('密碼提示問(wèn)題或答案錯(cuò)誤!');</script>");TextBox2.Text="";TextBox3.Text="";}elseif(i==0&&j!=0){Response.Write("<scriptlanguage=javascript>alert('問(wèn)題答案錯(cuò)誤!');</script>");TextBox2.Text="";}}dr.Close();conn.Close();5.4上傳文件、照片圖5-3上傳文件圖5-4上傳照片上傳文件和照片主要是用到FileUpload控件,上傳文件代碼如下:if(FileUpload1.HasFile)//如果FileUpload控件中包含了某文件{stringname=FileUpload1.PostedFile.FileName;//客戶端文件路徑FileInfofile=newFileInfo(name);//創(chuàng)建FileInfo實(shí)例//從File對(duì)象中獲得文件名稱(chēng),并賦給變量FileNamestringfileName=file.Name;//服務(wù)器端文件路徑stringwebFilePath=Server.MapPath("文件/"+fileName);//讀取文件類(lèi)型,并賦給變量fileContentTypestringfileContentType=FileUpload1.PostedFile.ContentType;SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";stringstrVal="'"+Session["name"]+"','"+TextBox1.Text+"','"+webFilePath+"'";stringstrIns="insertinto文件表(Uname,wname,SPath)values("+strVal+")";//講文件信息插入到文件表中if(!File.Exists(webFilePath)){try{//使用FileUpload控件的SaveAs方法保存文件FileUpload1.SaveAs(webFilePath);Label3.Text="文件“"+fileName+"”成功上傳。";SqlCommandinsCom=newSqlCommand(strIns,conn);SqlDataAdapterda=newSqlDataAdapter();conn.Open();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();conn.Close();;}catch(Exceptionex)//上傳文件出錯(cuò)則執(zhí)行的代碼{Label3.Visible=true;//使標(biāo)簽控件可見(jiàn)Label3.Text="文件上傳失敗,失敗原因:"+ex.Message;}}else{Label3.Visible=true;Label3.Text="文件已經(jīng)存在,請(qǐng)重命名后上傳";}}else{Label3.Visible=true;Label3.Text="請(qǐng)選擇文件或輸入文件路徑及名稱(chēng)!";}照片的上傳和文件的上傳基本上差不多,只不過(guò)照片上傳的時(shí)候定義了文件類(lèi)型必須為jpg格式的。在這個(gè)功能里,在按按鈕的時(shí)候是跳出一個(gè)文本框,實(shí)現(xiàn)代碼如下:this.Button1.Attributes.Add("onclick","javascript:OpenOvertimeDlog('add',540,400)");//增加Buttonthis.Button2.Attributes.Add("onclick","javascript:OpenOvertimeDlog1('add',540,400)");//增加Button<scripttype="text/javascript"language="javascript">functionOpenOvertimeDlog(frmWin,width,height){varme;varaction;action=frmWin;//把父頁(yè)面窗口對(duì)象當(dāng)作參數(shù)傳遞到對(duì)話框中,以便對(duì)話框操縱父頁(yè)自動(dòng)刷新。me="addw.aspx?action="+action+"";//顯示對(duì)話框。window.showModalDialog(me,null,'dialogWidth='+width+'px;dialogHeight='+height+'px;help:no;status:no')}</script>5.5對(duì)照片評(píng)論,留言功能圖5-5瀏覽照片頁(yè)面圖5-6對(duì)照片評(píng)論頁(yè)面圖5-7留言板頁(yè)面評(píng)論和留言基本上是差不多的,評(píng)論只是針對(duì)的是對(duì)上傳照片進(jìn)行評(píng)論,而留言的話就是你想對(duì)別人說(shuō)什么活著對(duì)網(wǎng)站的管理員進(jìn)行留言。點(diǎn)擊評(píng)論顯示條數(shù)那個(gè)按鈕可以查看對(duì)此照片的評(píng)論。評(píng)論具體代碼如下:if((string)(Session["name"])==null){Response.Write("<scriptlanguage=javascript>alert('請(qǐng)先登陸');</script>");}elseif(TextBox1.Text==""){Response.Write("<scriptlanguage=javascript>alert('評(píng)論不能為空');</script>");}else{SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";conn.Open();stringstrIns="insertinto評(píng)論表(Imageurl,pinglun,time,Uname)values('"+url+"','"+TextBox1.Text+"','"+DateTime.Now+"','"+Session["name"]+"')";SqlCommandinsCom=newSqlCommand(strIns,conn);SqlDataAdapterda=newSqlDataAdapter();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();TextBox.Text="";dataGridBind();conn.Close();把評(píng)論信息保存到數(shù)據(jù)庫(kù)中,如果沒(méi)有登錄的話,則不能發(fā)表評(píng)論,發(fā)表評(píng)論的時(shí)候內(nèi)容也不能為空。顯示評(píng)論的代碼如下:SqlConnectionconn1=newSqlConnection();conn1.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";conn1.Open();stringstrsql="selectpinglun,time,Uname,pidfrom評(píng)論表whereimageurl='"+(string)(Session["im"])+"'ORDERBYtimeDESC";SqlCommandcom=newSqlCommand(strsql,conn1);SqlDataAdapterda=newSqlDataAdapter();da.SelectCommand=com;DataSetds=newDataSet();da.Fill(ds,"評(píng)論表");if(!IsPostBack){first.Enabled=false;up.Enabled=false;}PagedDataSourcepg=newPagedDataSource();pg.DataSource=ds.Tables["評(píng)論表"].DefaultView;pg.AllowPaging=true;//允許分頁(yè)pg.PageSize=6;//每頁(yè)顯示的評(píng)論條數(shù)if(Request.QueryString["page"]==null){ipage=1;}else{ipage=Convert.ToInt32(Request.QueryString["page"]);}itpage=pg.PageCount;pg.CurrentPageIndex=i1;Label7.Text="第"+ipage.ToString()+"頁(yè)/共"+itpage.ToString()+"頁(yè)";if(!pg.IsFirstPage)//判斷是否是第一頁(yè){first.PostBackUrl=Request.CurrentExecutionFilePath+"?page=1";up.PostBackUrl=Request.CurrentExecutionFilePath+"?page="+Convert.ToString(i1);}if(!pg.IsLastPage){end.PostBackUrl=Request.CurrentExecutionFilePath+"?page="+pg.PageCount.ToString();next.PostBackUrl=Request.CurrentExecutionFilePath+"?page="+Convert.ToString(ipage+1);}GridView1.DataSource=pg;GridView1.DataBind();顯示評(píng)論這里用了DataList來(lái)顯示,顯示的是評(píng)論者from,評(píng)論時(shí)間time,還有就是評(píng)論內(nèi)容。留言和以上的評(píng)論大同小異,只不過(guò)留言每頁(yè)顯示的是10條。5.6搜索功能具體代碼如下:SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";stringstrsql="select*from文件表wherewname='"+TextBox1.Text+"'";//查詢是否存在此文件conn.Open();//連接數(shù)據(jù)庫(kù)SqlCommandcmd=newSqlCommand(strsql,conn);SqlDataReadersqlreader=cmd.ExecuteReader();if(sqlreader.Read()){Session["wname"]=sqlreader["wname"];if(Session["wname"]=""){Response.Write("<scriptlanguage=javascript>alert('你搜索的文件不存在');</script>");}else{Response.Redirect("loaddown.aspx");}}如果文件存在的話,就跳入下載頁(yè)面,顯示出搜索文件的基本信息,同時(shí)提供此文件的下載。5.7管理員界面圖5-8管理員界面管理員登錄就進(jìn)入管理員界面,本界面可以查看使用此管理系統(tǒng)的用戶的基本信息,并可對(duì)其信息進(jìn)行編輯和刪除。同時(shí)在此界面上,可以上傳公告,對(duì)照片、文件的管理,評(píng)論、留言的管理。其中用戶管理、留言管理、照片管理、文件管理、評(píng)論管理需要配置數(shù)據(jù)源,實(shí)現(xiàn)方法如下:使用GridView控件配置數(shù)據(jù)源,與SQL2005數(shù)據(jù)庫(kù)表中的數(shù)據(jù)連接,首先選擇GridView控件到頁(yè)面,在選擇數(shù)據(jù)源里選擇新建數(shù)據(jù)源,接下來(lái)選擇數(shù)據(jù)庫(kù)類(lèi)型,我們選擇數(shù)據(jù)庫(kù),點(diǎn)擊確定后,我們需要選擇數(shù)據(jù)連接,點(diǎn)擊新建連接,選擇MicrosoftSQLServer,接著設(shè)置添加連接的數(shù)據(jù),選擇服務(wù)器,登錄SQL服務(wù)器方式,選擇數(shù)據(jù)庫(kù)名,接著連續(xù)點(diǎn)擊下一步,直至出現(xiàn)如圖5-10:圖5-9配置Select語(yǔ)句我們選擇需要讀取的表的列名,按完成即可。上傳公告代碼如下:CheckName();if(!bCheck)//判斷此公告是否存在{Response.Write("<scriptlanguage=javascript>alert('此公告以存在');</script>");return;}SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";stringstrVal="'"+TextBox1.Text+"','"+TextBox2.Text+"','"+DateTime.Now.ToShortDateString()+"'";stringstrIns="insertinto公告(title,contect,time)values("+strVal+")";//將公告信息插入到數(shù)據(jù)庫(kù)中的公告表中SqlCommandinsCom=newSqlCommand(strIns,conn);SqlDataAdapterda=newSqlDataAdapter();conn.Open();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();Response.Write("<scriptlanguage=javascript>alert('添加成功,返回上一頁(yè)');</script>");Response.Redirect("admin.aspx");conn.Close();//關(guān)閉數(shù)據(jù)庫(kù)5.8下載文件圖5-10配置Select語(yǔ)句下載頁(yè)面顯示的是要下載文件的一些基本信息,實(shí)現(xiàn)下載的代碼如下:stringSelectName=Label7.Text;//讀取存儲(chǔ)路徑stringsaveFilename=Label4.Text;//讀取文件名FileInfofinfo=newFileInfo(SelectName);Response.Clear();Response.Charset="utf-8";Response.Buffer=true;this.EnableViewState=false;Response.ContentEncoding=System.Text.Encoding.UTF8;Response.AppendHeader("Content-Disposition","attachment;filename="+saveFilename);Response.ContentType="application/unknown";Response.WriteFile(SelectName);Response.Flush();Response.Close();Response.End();5.9修改頭像圖5-10配置Select語(yǔ)句修改頭像就是跟上傳照片差不多,就是把數(shù)據(jù)庫(kù)中的頭像保存中的照片換成你想要的那張頭像。就是更新該用戶的頭像。具體代碼如下:protectedvoidButton1_Click(objectsender,EventArgse){if(FileUpload1.HasFile){stringname=FileUpload1.PostedFile.FileName;FileInfofile=newFileInfo(name);stringfileName=file.Name;stringwebFilePath=Server.MapPath("photo/"+fileName);stringfileContentType=FileUpload1.PostedFile.ContentType;SqlConnectionconn=newSqlConnection();conn.ConnectionString="server=PC-200905172339;database=學(xué)工之家;uid=sa;password=123456";stringstrIns="update用戶表setHeadPicture='"+"~/photo/"+fileName+"'whereUname='"+(String)(Session["name"])+"'"http://更新數(shù)據(jù)庫(kù)中的頭像圖片;if(fileContentType=="image/pjpeg"){if(!File.Exists(webFilePath)){try{FileUpload1.SaveAs(webFilePath);Label1.Text="照片“"+fileName+"”成功上傳。";SqlCommandinsCom=newSqlCommand(strIns,conn);SqlDataAdapterda=newSqlDataAdapter();conn.Open();da.InsertCommand=insCom;da.InsertCommand.ExecuteNonQuery();conn.Close();;

溫馨提示

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

評(píng)論

0/150

提交評(píng)論