基于PHP技術(shù)的網(wǎng)絡(luò)文件管理系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的飛速發(fā)展以及網(wǎng)絡(luò)技術(shù)在文件存儲(chǔ)及文件管理中的應(yīng)用,特別是在基于WEB的文件管理中,用戶對(duì)于文件存儲(chǔ)管理的方便、效率和安全的要求越來(lái)越高。本文正是在WEB環(huán)境中采用PHP技術(shù)設(shè)計(jì)的一種文件管理系統(tǒng),該系統(tǒng)的設(shè)計(jì)能很好地滿足用戶在不同終端對(duì)服務(wù)器中的文件進(jìn)行遠(yuǎn)程管理的各種需求,而且沒(méi)有類似本地存儲(chǔ)的局限性,讓用戶能夠在互聯(lián)網(wǎng)中安全便利地進(jìn)行文件的存儲(chǔ)和管理工作,也利于資源的共享和交流。
1系統(tǒng)功能設(shè)計(jì)
本系統(tǒng)的WEB服務(wù)器為Apache,數(shù)據(jù)庫(kù)服務(wù)器為MySQL,開(kāi)發(fā)語(yǔ)言是PHP,開(kāi)發(fā)工具采用EclipsePHPStudio和DreamWeaver,運(yùn)行平臺(tái)為Windows2003Server。PHP是一種運(yùn)行在服務(wù)器端的腳本語(yǔ)言,具有開(kāi)源、免費(fèi)、跨平臺(tái)等優(yōu)勢(shì),此外,本系統(tǒng)也可以很好地移植到Linux平臺(tái)。具體功能結(jié)構(gòu)如圖1所示。
1.1系統(tǒng)管理
系統(tǒng)管理模塊主要是進(jìn)行用戶認(rèn)證、用戶信息記錄、用戶操作記錄、用戶權(quán)限判斷以及系統(tǒng)安全管理等。系統(tǒng)分為個(gè)人存儲(chǔ)空間與公共存儲(chǔ)空間。用戶存儲(chǔ)的私人文件對(duì)其他用戶為不可見(jiàn),保證用戶個(gè)人文件安全;公共空間中的文件是開(kāi)放的,可供各用戶瀏覽、下載,管理員對(duì)公共文件有移動(dòng)、刪除的權(quán)限。
1.2文件管理
文件管理模塊是系統(tǒng)核心功能模塊,主要功能包括文件上傳下載、文件資源瀏覽、文件資源搜索、文件分類管理、文件的基本操作等。其中,文件上傳主要采用SWFUpload組件作為文件上傳工具,配合采用PHP編寫的文件上傳處理程序來(lái)處理SWFUpload上傳到文件服務(wù)器中的文件;文件下載模塊主要是對(duì)用戶請(qǐng)求下載的文件進(jìn)行處理,保護(hù)文件路徑等重要信息,隱藏瀏覽器地址欄中顯示的服務(wù)器信息,提高服務(wù)器安全性;文件瀏覽和搜索模塊主要是將文件信息顯示在網(wǎng)頁(yè)中,并提供按文件標(biāo)題、關(guān)鍵字、更新時(shí)間、上傳用戶等多種搜索方式,方便用戶快速地查詢符合條件的文件;分類管理主要實(shí)現(xiàn)對(duì)公共文件和用戶私人文件的分類管理。
1.3附加功能管理
文件附加功能管理模塊以文件管理模塊為基礎(chǔ),完成對(duì)文件管理功能的擴(kuò)展。主要實(shí)現(xiàn)用戶對(duì)文件的更新、簡(jiǎn)單文本的在線閱讀以及私人文件的分享等簡(jiǎn)單附加功能。
2系統(tǒng)工作流程及特點(diǎn)
2.1系統(tǒng)工作流程
系統(tǒng)工作流程為:用戶登錄,服務(wù)器進(jìn)行權(quán)限驗(yàn)證,普通用戶能夠查閱、編輯、刪除、分享本人存儲(chǔ)的文件,而對(duì)于公共空間中的共享文件只擁有查閱、下載的權(quán)限,管理員除了能完成普通用戶的操作之外,還能對(duì)共享文件進(jìn)行移動(dòng)、刪除等操作。其系統(tǒng)工作流程圖如圖2所示。
圖2 系統(tǒng)工作流程圖
2.2系統(tǒng)特點(diǎn)
本系統(tǒng)的主要特點(diǎn)如下:
系統(tǒng)大量采用Javascript、CSS+DIV等動(dòng)態(tài)網(wǎng)頁(yè)技術(shù),頁(yè)面布局大方美觀,并支持用戶通過(guò)IE、火狐等不同內(nèi)核的瀏覽器進(jìn)行訪問(wèn),用戶體驗(yàn)性良好。
在用戶認(rèn)證、文件上傳等實(shí)現(xiàn)過(guò)程中結(jié)合使用了Ajax局部刷新技術(shù),提升了系統(tǒng)前后端之間的數(shù)據(jù)交互效率。
系統(tǒng)能識(shí)別用戶上傳文件擴(kuò)展名對(duì)文件自動(dòng)分類,也可由用戶自定義類別,便于文件管理和查找。
系統(tǒng)具有良好的移植性和擴(kuò)展性。
3系統(tǒng)設(shè)計(jì)
本系統(tǒng)由用戶進(jìn)行文件操作及接收處理的前端和提交數(shù)據(jù)的服務(wù)器后端組成。其中,前端提供用戶訪問(wèn)系統(tǒng)入口用戶經(jīng)過(guò)認(rèn)證后,即可進(jìn)行文件管理操作;系統(tǒng)后端響應(yīng)用戶請(qǐng)求,處理用戶操作信息,并在數(shù)據(jù)庫(kù)中記錄相關(guān)信息。其部分功能設(shè)計(jì)如下:
3.1用戶認(rèn)證
該模塊通過(guò)驗(yàn)證用戶提交的表單(如果用戶選擇記住登錄密碼,則驗(yàn)證用戶瀏覽器提交的cookie)與數(shù)據(jù)庫(kù)中注冊(cè)信息是否相符合來(lái)進(jìn)行用戶認(rèn)證,認(rèn)證成功后,系統(tǒng)將根據(jù)用戶級(jí)別分配用戶權(quán)限。
3.2文件瀏覽及查找
按照用戶選擇的查閱方式顯示相關(guān)文件資源(默認(rèn)情況下按文件上傳時(shí)間倒序排列),文件查找方式包括標(biāo)題、關(guān)鍵字、上傳者、上傳時(shí)間、文件類型等。
3.3文件上傳
采用SWFUpload組件完成文件的上傳,該組件功能強(qiáng)大,不僅可以批量上傳文件,還可以實(shí)時(shí)顯示文件上傳進(jìn)度,但是,該組件并沒(méi)有與數(shù)據(jù)庫(kù)進(jìn)行連接??紤]到文件信息記錄與文件管理的需要,系統(tǒng)配合使用PHP腳本處理上傳文件信息,通過(guò)系統(tǒng)函數(shù)move_uploaded_file移動(dòng)上傳文件至指定空間后,將文件信息、路徑等信息寫入數(shù)據(jù)庫(kù)中。
3.4文件下載
下載處理模塊通過(guò)GET方式獲取用戶點(diǎn)擊下載的文件ID,在數(shù)據(jù)中查找到相應(yīng)文件路徑信息后跳轉(zhuǎn)到下載頁(yè)面,發(fā)送文件流到用戶瀏覽器。該設(shè)計(jì)能在地址欄中隱藏文件路徑,在一定程度上提高安全防護(hù)。
3.5文件共享
系統(tǒng)除公共存儲(chǔ)空間外,還為每個(gè)用戶分配個(gè)人存儲(chǔ)空間。文件分享功能將用戶分享的文件移動(dòng)至公共存儲(chǔ)空間,同時(shí)在數(shù)據(jù)庫(kù)共享文件表中添加相關(guān)記錄。
3.6文件安全
用戶認(rèn)證采用加密措施來(lái)保證認(rèn)證過(guò)程信息安全;規(guī)范數(shù)據(jù)庫(kù)操作語(yǔ)句,防止SQL注入;強(qiáng)化權(quán)限管理,用戶個(gè)人存儲(chǔ)空間只限用戶本人管理,其他任何用戶包括管理員都無(wú)權(quán)訪問(wèn);采用Rewrite方法重寫URL,并可隱藏文件路徑和參數(shù),以提高服務(wù)器的安全性能。
4結(jié)語(yǔ)
本系統(tǒng)是基于PHP的網(wǎng)絡(luò)文件管理系統(tǒng),用戶通過(guò)瀏覽器上傳文件至服務(wù)器中,文件服務(wù)器處理文件,數(shù)據(jù)庫(kù)服務(wù)器記錄相關(guān)信息,系統(tǒng)整合信息資源并呈現(xiàn)給用戶。測(cè)試表明,整個(gè)系統(tǒng)使用方便,性能穩(wěn)定,并且在文件管理過(guò)程中提供了安全性保障,滿足了用戶通過(guò)瀏覽器遠(yuǎn)程管理文件的需求。系統(tǒng)具有很好的擴(kuò)展性,可以根據(jù)滿足自身設(shè)計(jì)需求,開(kāi)發(fā)出更多的擴(kuò)展功能。
20211020_617033ce4dbfe__基于PHP技術(shù)的網(wǎng)絡(luò)文件管理系統(tǒng)設(shè)計(jì)