【正文】
狀態(tài) 公告內(nèi)容 網(wǎng)絡(luò)信息發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 20 ⑦ 友情鏈接實(shí)體:友情鏈接使得用戶切換界面方便,我們設(shè)計(jì)了連接 ID、網(wǎng)站名稱、網(wǎng)址、站點(diǎn)簡介、網(wǎng)站 LOGO 和排序者 6 個(gè)字段,友情鏈接實(shí)體圖如圖 312所示。 信息的評論相關(guān)數(shù)據(jù)相對于信息的數(shù)據(jù)而言要簡單一些。 表 34 cms_page 表 列名 數(shù)據(jù)類型 可否為空 說明 id code title content created_date int(11) varchar(20) varchar(100) text datetime 否 是 是 是 是 頁面 id 別名 名稱 內(nèi)容 創(chuàng)建日期 管理員表(表名: cms_users) 主要記錄管理員賬號(hào)的相關(guān)信息,因?yàn)樵撓到y(tǒng)比較簡單管理員賬號(hào)信息比較少,管理員表結(jié)構(gòu)如表 35 所示 。 信息 網(wǎng)址 連接 ID 排序 站點(diǎn)簡介 網(wǎng)站 LOGO 網(wǎng)站名稱 網(wǎng)絡(luò)信息發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 21 表 32 cms_message 表 列名 數(shù)據(jù)類型 可否為空 說明 mid aid titile name qq content ip validate created_date int(11) int(11) varchar(200) varchar(50) varchar(15) varchar(50) text varchar(20) Int(11) datetime 否 否 是 是 是 是 是 是 是 是 評論編號(hào) 信息 編號(hào) 評論標(biāo)題 評論者名稱 評論者 評論作者 評論內(nèi)容 評論者 IP 是否驗(yàn)證 評論日 期 信息分欄表(表名: cms_category) 主要記錄信息分欄的信息數(shù)據(jù),信息分類欄表結(jié)構(gòu)如表 33 所示 。 這也是網(wǎng)絡(luò)信息發(fā)布系統(tǒng)中非常重要的一個(gè)表 ,信息 表結(jié)構(gòu)如表 31所示 。 圖 39 公告實(shí)體圖 ⑤ 管理員實(shí)體:對于管理員實(shí)體,我們根據(jù)需求設(shè)計(jì)了管理員 ID、登錄賬戶、密碼這個(gè) 3 個(gè)字段,管理員實(shí)體圖如圖 310 所示。 圖 35 數(shù)據(jù)庫 (2) 數(shù)據(jù)庫實(shí)體 ① 信息實(shí)體:對于信息實(shí)體我們根據(jù)需要對其設(shè)計(jì)了,信息 ID、信息標(biāo)題、信息副標(biāo)題、信息內(nèi)容、發(fā)布時(shí)間、信息作者、信息來源、信息摘要、信息分類和發(fā)布者編號(hào)這 10 個(gè)字段,信息實(shí)體圖如圖 36 所示。另外擴(kuò)充信息和動(dòng)態(tài)變化的信息分開放置在不同的表里。 管理員賬號(hào):包括的數(shù)據(jù)項(xiàng)有管理員編號(hào)、用戶名、用戶 密碼。通過收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)詞典,為后面的具體設(shè)計(jì)打下基礎(chǔ)。 OLE DB 是一個(gè)底層的數(shù)據(jù)庫訪問接口,用它可以訪問各種數(shù)據(jù)源,包括傳統(tǒng)的關(guān)系數(shù)據(jù)庫。通過 MySQL 在操作系統(tǒng)上建立的 ODBC 可以輕松將這些 SQL語句翻譯成為相應(yīng)的 MySQL 數(shù)據(jù)庫管理系統(tǒng)指令并對數(shù)據(jù)庫進(jìn)行管理。 系統(tǒng)數(shù)據(jù)庫設(shè)計(jì) 系統(tǒng)數(shù)據(jù)庫概述 MySQL 數(shù)據(jù)庫由瑞典 MySQL 公司開發(fā)和維護(hù)的一個(gè)精巧的 SQL( Structured Query Language,結(jié)構(gòu)化查詢語言 ) 關(guān)系型數(shù)據(jù)庫管理系統(tǒng) ( DBMS) 。系統(tǒng)管理員可以再后臺(tái)進(jìn)行添加、修改和刪除等操作,實(shí)現(xiàn)對系統(tǒng)前臺(tái)頁面信息管理。 ④ 垃圾箱管理 當(dāng)管理員誤刪除了一些信息,特別是在進(jìn)行批量刪除的情況下,會(huì)產(chǎn)生信息大量丟失,為了解決這一問題本系統(tǒng)提供了垃圾箱功能,刪除的信息會(huì)在暫時(shí)保存在垃圾箱里,系統(tǒng)管理員可以對信息進(jìn)行徹底刪除或還原等操作,同時(shí)該垃圾箱管理模塊也提供了批量操作的功 能,這樣使系統(tǒng)管理員對信息的管理更加方便、高效。 圖 33 后臺(tái)功能結(jié)構(gòu)圖 ② 信息修改 管理員將信息發(fā)布以后,難免有出錯(cuò)需要修改的情況,因此在后臺(tái)設(shè)計(jì)的時(shí)候針對此情況,我們設(shè)計(jì)了管理員后臺(tái)信息修改功能。 (1) 信息管理 ① 信息發(fā)布 信息發(fā)布模塊對于網(wǎng)絡(luò)信息發(fā)布系統(tǒng)來說是最主要的一個(gè)模塊。 (5) 最新公告 當(dāng)管理員想要發(fā)布一些重要信息時(shí),為了保證所用的用戶能夠及時(shí)查看,本系統(tǒng)再需求分析和系統(tǒng)設(shè)計(jì)時(shí)考慮了最新公告的功能的作用和設(shè)計(jì),最新公告會(huì)在 系統(tǒng)前臺(tái)醒目的地方顯示,公告標(biāo)題會(huì)以循環(huán)滾動(dòng)的方式在公告欄里顯示,用戶點(diǎn)擊公告標(biāo)題便可查看信息公告信息。信息 查找就是用戶只要在此網(wǎng)絡(luò)信息發(fā)布系統(tǒng)的主頁中找到信息查找的輸入框,然后在此查詢輸入框中輸入要查詢信息的關(guān)鍵字,然后提交到數(shù)據(jù)庫中。 (3) 信息評論 系統(tǒng)前臺(tái)功能 結(jié)構(gòu)圖 信息分類 信息詳情 信息評價(jià) 信息查找 最新公告 友情鏈接 后臺(tái)登陸 網(wǎng)絡(luò)信息發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 13 信息評價(jià)是 本系統(tǒng)中 的 又一重要模塊, 用戶根據(jù)信息的詳細(xì)內(nèi)容給與評價(jià)以發(fā)表自己對該信息看法 。 網(wǎng)絡(luò) 信息發(fā)布系統(tǒng)前臺(tái)功能結(jié)構(gòu)圖如圖 32 所示。 系統(tǒng)體系結(jié)構(gòu) 基于 B/S 結(jié)構(gòu)的網(wǎng)絡(luò)信息發(fā)布系統(tǒng)網(wǎng)站,采用應(yīng)用終端(用戶主機(jī) /瀏覽器)、WEB 服務(wù)器、數(shù)據(jù)服務(wù)器組成,網(wǎng)絡(luò)信息發(fā)布系統(tǒng)網(wǎng)站的核心是接入服務(wù)器和應(yīng)用服務(wù)器部分,該網(wǎng)站系統(tǒng)的總體結(jié)構(gòu)圖如圖 31 所示。模型、視圖與控制器的分離,使得一個(gè)模型可以具有多個(gè)顯示視圖。而且和 PHP一樣源代碼開放、高性能、跨平臺(tái)等特性。 (7) 后臺(tái)管理功能。 (3) 設(shè)置 信息 搜索功能模塊。任何一個(gè)軟件系統(tǒng)本質(zhì)上都是信息處理系統(tǒng),系統(tǒng)必須處理的信息和系統(tǒng)應(yīng)該產(chǎn)生的信息在很大程度上決定了系統(tǒng)的面貌,對軟件設(shè)計(jì)都有很大影響,因此,必須分析系統(tǒng)的數(shù)據(jù)需求 [16]。在這個(gè)階段結(jié)束時(shí)形成的文檔中應(yīng)該包括詳細(xì)的數(shù)據(jù)流圖、數(shù)據(jù)字典和一組簡明的算法描述。 (6) 信息類別管理:管理員實(shí)現(xiàn)對信息欄的增加、修改和刪除信息類別的操作。 (4) 管理員登錄:負(fù)責(zé)處理管理員的登錄和退出。 (2) 信息查找:根據(jù)信息的標(biāo)題關(guān)鍵字查找相關(guān)信息。對信息的發(fā)布、修改、刪除等操作,都將立即在主頁的對應(yīng)欄目顯示 出來,實(shí)現(xiàn) “ 即時(shí)發(fā)布、即時(shí)見效 ” 。名字來源于每個(gè)程序的第一個(gè)字母。 WAMP 技術(shù) Windows 下的 Apache+MySQL+PHP,一組常用來搭建動(dòng)態(tài)網(wǎng)站或者服務(wù)器的開源軟件,本身都是各自獨(dú)立的程序,但是因?yàn)槌1环旁谝黄鹗褂?,擁有了越來越高的兼容度,共同組成一個(gè)強(qiáng)大的 Web 應(yīng)用程序平臺(tái)。 JavaScript 語言 JavaScript 語言是一種基于對象 ( Object) 和事件驅(qū)動(dòng)( Event Driven)并具有安全性能的腳本語言。 通過 phpMyAdmin 可以 進(jìn)行絕大部分的 MySQL 操作,包括 對數(shù)據(jù)庫 級(jí) 操作 、表級(jí)操作以及數(shù)據(jù)管理等,數(shù)據(jù)庫管理系統(tǒng)和接口的原理如圖22 所示。 MySQL 數(shù)據(jù)庫的特點(diǎn)是數(shù)據(jù)庫文件小而簡單,不需要運(yùn)行或者啟動(dòng)數(shù)據(jù)庫服務(wù)進(jìn)程就可以使用。 MySQL 是一個(gè)快速、多線程、多用戶的小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng) 。 ADO( ActiveX Data Objects) 是微軟開發(fā)數(shù)據(jù)庫應(yīng)用程序的數(shù)據(jù)庫訪問技術(shù) [12]。由于客戶機(jī)把事務(wù)處理邏輯部分 給 了功能服務(wù)器, 使 客戶機(jī)一下子 “ 苗條 ” 了很多,不在 把 負(fù)責(zé)處理計(jì)算和數(shù)據(jù)訪問等關(guān)鍵事物,只負(fù)責(zé)顯示部分,所以維護(hù)人員不再為程序的維護(hù)工作奔波于每個(gè)客戶機(jī)之間, 而把主要精力放在功能服務(wù)器上程序的更新工作。瀏覽器發(fā)出請求,而其余如數(shù)據(jù)請求、加工、結(jié)果返回以及動(dòng)態(tài)網(wǎng)頁生產(chǎn)等工作全部由 Web Server 完成。 B/S 結(jié)構(gòu) 簡介 在當(dāng)前 Inter 領(lǐng)域 ,“ 瀏覽器 /服務(wù)器 ( 簡稱 B/S)” 結(jié)構(gòu)是非常流行的客戶機(jī) /服務(wù)器結(jié)構(gòu)。 (3) 擴(kuò)展性強(qiáng): PHP 已經(jīng)進(jìn)入了一個(gè)高速發(fā)展的時(shí)期,具有良好的擴(kuò)展附加功能。 PHP 與MySQL 是現(xiàn)在絕佳的組合。用 PHP 做出的動(dòng)態(tài)頁面與其他的編程語言相比,網(wǎng)絡(luò)信息發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 5 PHP 是將程序嵌入到 HTML 文檔中去執(zhí)行,執(zhí)行效率比完全 生成 HTML 標(biāo)記的 CGI要高許多; PHP 還可以執(zhí)行編譯后代碼,編譯可以達(dá)到加密和優(yōu)化代碼運(yùn)行,使代碼運(yùn)行更快。 (4) PHP 引擎將生成 HTML 頁面返回給 Web 服務(wù)器。 PHP 工作原理 PHP 的所有應(yīng)用程序都是通過 Web服務(wù)器 (如 Apache)和 PHP 引擎程序解釋執(zhí)行完成的,工作過程 [8]: (1) 當(dāng)用戶在瀏覽器地址中輸入要訪問的 PHP 頁面文件名,然后回車就會(huì)觸發(fā)這個(gè) PHP 請求,并將請求傳送 給 支持 PHP 的 Web 服務(wù)器。 PHP 是完全免費(fèi)的開源產(chǎn)品,而且設(shè)計(jì)者可以不受限制地獲得源碼,甚至可以從中加進(jìn)設(shè)計(jì)者自己的特色。 PHP 簡介 PHP 是一種 HTML 內(nèi)嵌式的腳本語言(類似 ASP)。三者都是面向 Web 服務(wù)器的技術(shù),客戶端瀏覽器不 需要任何附加軟件支持。 Java Servlet 是 JSP 的技術(shù)基礎(chǔ),而且大型的Web 應(yīng)用程序的開發(fā)需要 Java Servlet 和 JSP 配合才能完成。因此, ASP 幾乎可以實(shí)現(xiàn)任何功能。因此,使用 PHP 可大大的減少開發(fā)所用的成本。其最強(qiáng)大和最重要的特征就是跨平臺(tái),面向?qū)ο蟆? 因此,網(wǎng)絡(luò)信息 發(fā)布系統(tǒng)能夠?qū)崿F(xiàn)數(shù)據(jù)的動(dòng)態(tài)、實(shí)時(shí)發(fā)布 查找等功能,信 息通過 一個(gè)簡單的操作界面加入數(shù)據(jù)庫, 然后通過已有的模板格式與審核流程以 Web 的形式生成,從而改變了傳統(tǒng)的網(wǎng)絡(luò)信息采集發(fā)布的模式 [2]。最后, 網(wǎng)絡(luò)信息 發(fā)布系統(tǒng)能時(shí)時(shí)保持網(wǎng)站的活動(dòng)力和影響力,吸引更多的長期用戶群 。由于各種待發(fā)布信息的產(chǎn)生源涉及到各個(gè) 行業(yè) ,待發(fā)布信息的種類有服務(wù)型、動(dòng)態(tài)型、介紹型等等,因此長期以來各種信息的發(fā)布都是各個(gè)部門各自為政,難以管理與控制。 開發(fā)背景 隨著科技的迅速發(fā)展,對于網(wǎng)絡(luò)信息的發(fā)布越來越要求高效快捷,以便讓有需求的人及時(shí)得到想要的信息,而且 傳遞和獲取信息的途徑 也 越來越多 樣化 ,其中網(wǎng)絡(luò)以其跨時(shí)間 、 跨地域以及快速、高效 、 低成本的顯著特性己經(jīng)成為信息傳遞和信息獲取的主要途徑,而如何把信息以更快、更具表達(dá)力地發(fā)布到網(wǎng)上已經(jīng)成了各單位 企業(yè)部門 急 需解決的問題。 關(guān)鍵詞 PHP; WAMP; MySQL 網(wǎng)絡(luò)信息發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) II Network information release system ABSTRACT With the development of puter technology, work technology, database technology and the rapid development of science and technology, the society has entered the information era. Information sharing is an important part of the social life, has been the rapid development of the information technology impact of information technology on information sharing, the tremendous effect has bee increasingly apparent. Therefore, based on work information system has bee the development direction of modern information sharing. The system uses the B/S structure, on the basis of traditional information sharing methods are reasonable structure design and layout, interface generous simple, convenient operation. The system adopts the classical WAMP architecture, Windows+Apache+PHP +MySQL, improves the system patibility. The system is divided into two modules, namely in front of the system module and system management module background, in front of the system mainly realizes the tourists users of information browsing and search functions, system background system