

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目 錄</b></p><p><b> 摘要1</b></p><p><b> 關(guān)鍵詞1</b></p><p> Abstract2</p><p> Key words2</p><p><b
2、> 1 概述3</b></p><p> 1.1 PHP概述4</p><p> 1.2 PHP的功能與特點(diǎn)4</p><p> 1.3 PHP的工作原理4</p><p> 1.4 WampServer服務(wù)器5</p><p> 1.5 MySQL數(shù)據(jù)庫(kù)5</
3、p><p><b> 2 系統(tǒng)分析8</b></p><p> 2.1 系統(tǒng)可行性分析8</p><p> 2.2 系統(tǒng)需求分析9</p><p> 2.3 系統(tǒng)數(shù)據(jù)流圖9</p><p> 2.4 系統(tǒng)數(shù)據(jù)字典11</p><p> 3 系統(tǒng)總體
4、設(shè)計(jì)14</p><p> 3.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)14</p><p> 3.2 系統(tǒng)運(yùn)行環(huán)境配置14</p><p> 3.3 系統(tǒng)功能設(shè)計(jì)14</p><p> 3.4 數(shù)據(jù)庫(kù)設(shè)計(jì)15</p><p> 4 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)18</p><p> 4.1 前
5、臺(tái)展示模塊18</p><p> 4.1.1 首頁(yè)的設(shè)計(jì)與實(shí)現(xiàn)18</p><p> 4.1.2 推薦信息頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)21</p><p> 4.1.3 信息發(fā)布頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)21</p><p> 4.1.4 信息檢索頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)23</p><p> 4.2 后臺(tái)管理模塊24&l
6、t;/p><p> 4.2.1 登陸模塊設(shè)計(jì)與實(shí)現(xiàn)24</p><p> 4.2.2 后臺(tái)信息檢索設(shè)計(jì)與實(shí)現(xiàn)25</p><p> 4.2.3 信息管理設(shè)計(jì)與實(shí)現(xiàn)26</p><p> 4.2.4 數(shù)據(jù)訪(fǎng)問(wèn)模塊設(shè)計(jì)與實(shí)現(xiàn)28</p><p><b> 5 系統(tǒng)測(cè)試30</b>
7、;</p><p><b> 結(jié)束語(yǔ)33</b></p><p><b> 參考文獻(xiàn)34</b></p><p><b> 致謝35</b></p><p> 基于PHP+MYSQL的新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 計(jì)算機(jī)科學(xué)
8、與技術(shù)專(zhuān)業(yè)學(xué)生 毛慶娟</p><p> 指導(dǎo)教師 王鳳玲</p><p> 摘要:當(dāng)今,人們更喜歡上網(wǎng)獲取信息,傳統(tǒng)的報(bào)紙雜志已無(wú)法滿(mǎn)足人們對(duì)獲取信息的種種要求。針對(duì)此現(xiàn)狀,采用PHP和MySQL動(dòng)態(tài)網(wǎng)站設(shè)計(jì)技術(shù),開(kāi)發(fā)了一個(gè)方便、實(shí)用的新聞發(fā)布系統(tǒng)。文章概述了系統(tǒng)設(shè)計(jì)過(guò)程中的幾個(gè)關(guān)鍵技術(shù),分析了系統(tǒng)開(kāi)發(fā)的可行性,闡述了系統(tǒng)開(kāi)發(fā)的需求分析。經(jīng)過(guò)可行性分析和需求分析后,文章詳
9、細(xì)論述了系統(tǒng)的總體設(shè)計(jì)和詳細(xì)設(shè)計(jì),呈現(xiàn)了系統(tǒng)所能實(shí)現(xiàn)的功能,并將實(shí)現(xiàn)過(guò)程中的主要步驟用代碼的形式加以描述。最后,文章對(duì)系統(tǒng)測(cè)試進(jìn)行了描述。開(kāi)發(fā)和實(shí)現(xiàn)結(jié)果證明,該系統(tǒng)界面友好,使用方便,操作簡(jiǎn)單,可以實(shí)現(xiàn)基本功能,前臺(tái)和后臺(tái)具有較好的協(xié)調(diào)性,符合實(shí)際需要。</p><p> 關(guān)鍵詞:PHP;MySQL數(shù)據(jù)庫(kù);新聞發(fā)布系統(tǒng)</p><p> Design and Implementatio
10、n of the News Publishing System Based on PHP and MYSQL</p><p> Abstract: Today, people prefer to get information online, traditional newspapers and magazines have been unable to meet all the requirements to
11、 obtain information. For this situation, as the technology of the dynamic website development, PHP and MySQL is used to developed a convenient and practical news publishing system.This article provides an overview of sev
12、eral key technologies in the system design process, analyzed the feasibility of the system development, and analyzed the needs analysis o</p><p> Key words: PHP;MySQL database;News Publishing System</p&g
13、t;<p><b> 1 概述</b></p><p> 隨著互聯(lián)網(wǎng)的進(jìn)一步發(fā)展,網(wǎng)絡(luò)媒體在人們心中的地位越來(lái)越高,新聞發(fā)布系統(tǒng)作為網(wǎng)絡(luò)媒體的核心系統(tǒng),其重要性越來(lái)越明顯:一方面,它提供了新聞發(fā)布和新聞信息管理的功能;另一方面,它克服了傳統(tǒng)新聞報(bào)紙雜志的傳播速度慢、傳播范圍相對(duì)狹窄、缺乏動(dòng)態(tài)性等的缺點(diǎn)。甚至有的新聞發(fā)布系統(tǒng)還提供了用戶(hù)交流的功能,用戶(hù)可以很方便地參加一些調(diào)查
14、和相關(guān)新聞的評(píng)論。</p><p> 新聞發(fā)布系統(tǒng)是將網(wǎng)站上經(jīng)常變動(dòng)的信息、社會(huì)的動(dòng)態(tài)信息進(jìn)行集中管理,并通過(guò)信息的某些共性進(jìn)行分類(lèi)發(fā)布或查詢(xún)。新聞發(fā)布系統(tǒng)在國(guó)內(nèi)外早已有著成熟的研究成果和廣泛的社會(huì)應(yīng)用。國(guó)內(nèi)外眾多大型門(mén)戶(hù)網(wǎng)站,如網(wǎng)易、新浪、人民日?qǐng)?bào)網(wǎng)等每天都要進(jìn)行海量信息的維護(hù),這一切都要靠堅(jiān)實(shí)的新聞發(fā)布系統(tǒng)做后盾。而新聞發(fā)布系統(tǒng)的實(shí)現(xiàn)則得益于Web技術(shù)以及數(shù)據(jù)庫(kù)技術(shù)的支持。</p><p
15、> Web領(lǐng)域的主要開(kāi)發(fā)商相繼推出了多種Web開(kāi)發(fā)技術(shù),PHP就是其中之一。它是一種被廣泛使用的、開(kāi)放源代碼的腳本語(yǔ)言,非常適合于嵌入到HTML中形成動(dòng)態(tài)網(wǎng)頁(yè),其語(yǔ)法融合了C、Java和Perl的特征。PHP的主要目標(biāo)是讓W(xué)eb 開(kāi)發(fā)人員快速編寫(xiě)動(dòng)態(tài)網(wǎng)頁(yè),但PHP的功能還不止如此,其功能、效率和安全性均有較大優(yōu)勢(shì)。但是在實(shí)際的開(kāi)發(fā)中,總是由PHP程序配合數(shù)據(jù)庫(kù)進(jìn)行Web開(kāi)發(fā)和應(yīng)用,發(fā)揮出程序的最大潛能,而MySQL數(shù)據(jù)庫(kù)就是與P
16、HP珠聯(lián)璧合的強(qiáng)大合作伙伴。MySQL最著名的數(shù)據(jù)庫(kù)管理工具就是用PHP編寫(xiě)的phpMyAdmin[1]。</p><p> 系統(tǒng)在網(wǎng)頁(yè)制作軟件Dreamweaver的輔助下,使用PHP代碼嵌入HTML代碼中的方法實(shí)現(xiàn)了系統(tǒng)各模塊的功能,在WampServer服務(wù)器開(kāi)啟環(huán)境下,結(jié)合MySQL數(shù)據(jù)庫(kù)實(shí)現(xiàn)了前臺(tái)新聞?wù)故?、后臺(tái)新聞信息管理的功能。另外,系統(tǒng)中使用了Fckeditor類(lèi),在添加新聞時(shí)能夠?qū)崿F(xiàn)所見(jiàn)即所得的
17、輸入。增添了系統(tǒng)界面的友好性,在提高網(wǎng)站訪(fǎng)問(wèn)量方面具有不容忽視的作用。</p><p> 1.1 PHP概述</p><p> PHP是一種嵌入在HTML代碼中,由服務(wù)器解釋的腳本語(yǔ)言。它可以用于管理動(dòng)態(tài)內(nèi)容、支持?jǐn)?shù)據(jù)庫(kù)、處理會(huì)話(huà)跟蹤,甚至構(gòu)建整個(gè)電子商務(wù)站點(diǎn)。它支持許多流行的數(shù)據(jù)庫(kù),包括MySQL、PostgreSQL、Oracle、Sybase、Informix 和Microso
18、ft SQL Server。</p><p> 總體來(lái)說(shuō),PHP非常適合Web上的工作。但它并不是構(gòu)建動(dòng)態(tài)網(wǎng)站的唯一方法;如Perl、Java、JavaScript、ASP、Python、CGI以及其他許多方法都可以生成動(dòng)態(tài)的內(nèi)容。但是,PHP的優(yōu)點(diǎn)在于:第一,它是專(zhuān)為解決基于Web的問(wèn)題而設(shè)計(jì)的;第二,它是開(kāi)放源代碼的[2]。</p><p> 1.2 PHP的功能與特點(diǎn)</
19、p><p> PHP主要是用于服務(wù)器端的腳本程序,因此開(kāi)發(fā)者可以用PHP來(lái)完成任何其他的CGI程序能夠完成的工作,例如收集表單數(shù)據(jù)、生成動(dòng)態(tài)網(wǎng)頁(yè)、或者發(fā)送/接收Cookies。但它的功能遠(yuǎn)不局限于此。</p><p> PHP腳本主要用于以下三個(gè)領(lǐng)域:</p><p> (1) 服務(wù)端腳本。這是PHP最傳統(tǒng),也是最主要的目標(biāo)領(lǐng)域。開(kāi)發(fā)者需要擁有PHP解析器、Web
20、服務(wù)器和Web瀏覽器。在Web服務(wù)器上安裝并配置PHP后,就可用Web瀏覽器來(lái)訪(fǎng)問(wèn)PHP程序的輸出,即瀏覽服務(wù)端的PHP頁(yè)面。</p><p> (2) 命令行腳本。開(kāi)發(fā)者可以編寫(xiě)一段PHP腳本,并且不需要任何服務(wù)器或者瀏覽器來(lái)運(yùn)行它。在這種方式中,開(kāi)發(fā)者只需要PHP解析器來(lái)執(zhí)行。這種用法對(duì)于依賴(lài)Unix、Linux或Windows的日常運(yùn)行的腳本來(lái)說(shuō)是理想的選擇。這些腳本也可以用來(lái)處理簡(jiǎn)單的文本。</p
21、><p> (3) 編寫(xiě)客戶(hù)端的GUI應(yīng)用程序。對(duì)于基于窗口式的應(yīng)用程序來(lái)說(shuō),PHP或許不是一種最好的語(yǔ)言,但如果開(kāi)發(fā)者非常精通PHP,并且希望在客戶(hù)端應(yīng)用程序中使用PHP的一些高級(jí)特性,就可以利用PHP-GTK來(lái)編寫(xiě)這些程序。用這種方法,還可以編寫(xiě)跨平臺(tái)的應(yīng)用程序。PHP-GTK是PHP的一個(gè)擴(kuò)展,在通常發(fā)布的PHP包中并不包含它。</p><p> 使用PHP,開(kāi)發(fā)者并不局限于輸出HT
22、ML。PHP還能被用來(lái)動(dòng)態(tài)輸出圖像、PDF文件甚至Flash動(dòng)畫(huà)。開(kāi)發(fā)者還能夠非常簡(jiǎn)便地輸出文本,例如XHTML以及任何其他形式的XML文件。PHP能夠自動(dòng)生成這些文件,在服務(wù)端開(kāi)辟出一塊動(dòng)態(tài)內(nèi)容的緩存,可以直接把它們打印出來(lái),或者將它們存儲(chǔ)到文件系統(tǒng)中。</p><p> PHP最強(qiáng)大、最顯著的特性之一,是它支持很大范圍的數(shù)據(jù)庫(kù)。開(kāi)發(fā)者會(huì)發(fā)現(xiàn)利用PHP編寫(xiě)數(shù)據(jù)庫(kù)支持的網(wǎng)頁(yè)簡(jiǎn)單得難以置信[2]。</p&g
23、t;<p> 總而言之,開(kāi)發(fā)者應(yīng)該清楚PHP是一種強(qiáng)大的、而且靈活的開(kāi)發(fā)語(yǔ)言,支持各種運(yùn)行環(huán)境和數(shù)據(jù)庫(kù)。</p><p> 1.3 PHP的工作原理</p><p> 一個(gè)簡(jiǎn)單Web應(yīng)用的工作流程是:用戶(hù)通過(guò)瀏覽器向服務(wù)器發(fā)出請(qǐng)求;服務(wù)器根據(jù)請(qǐng)求URL地址找到指定頁(yè)面,并將該頁(yè)面及其他處理信息返回給瀏覽器;瀏覽器得到返回信息后將頁(yè)面信息呈現(xiàn)給用戶(hù)。</p>
24、<p> 基于PHP開(kāi)發(fā)的Web應(yīng)用的工作流程相似,只不過(guò)增加了一些額外的處理流程。在服務(wù)器接收請(qǐng)求以并找到指定頁(yè)面文件后,會(huì)對(duì)該P(yáng)HP文件進(jìn)行代碼編譯,數(shù)據(jù)交互等操作。然后再將處理后的信息發(fā)送到瀏覽器。</p><p> 如果服務(wù)器不支持PHP,在通常情況下,Web服務(wù)器會(huì)直接將超文本文件傳送到客戶(hù)端的瀏覽器作為對(duì)HTTP請(qǐng)求的應(yīng)答;如果服務(wù)器支持PHP,則在服務(wù)器端響應(yīng)一個(gè)PHP文件請(qǐng)求,首
25、先在一個(gè)PHP文件內(nèi)將HTML編碼直接傳送到客戶(hù)端的瀏覽器上,而內(nèi)嵌的PHP程序卻是先被Web服務(wù)器解釋執(zhí)行,然后將解釋執(zhí)行后的信息以HTML的形式傳送到客戶(hù)端的瀏覽器中[3]。</p><p> 1.4 WampServer服務(wù)器</p><p> 首先介紹一下Apache服務(wù)器。Apache源于NCSAhttpd服務(wù)器,經(jīng)過(guò)多次修改,成為世界上最流行的Web服務(wù)器軟件之一。Apa
26、che取自“a patchy server”的讀音,意思是充滿(mǎn)補(bǔ)丁的服務(wù)器,因?yàn)樗亲杂绍浖?,所以不斷有人?lái)為它開(kāi)發(fā)新的功能、新的特性、修改原來(lái)的缺陷。Apache的特點(diǎn)是簡(jiǎn)單、速度快、性能穩(wěn)定,并可做代理服務(wù)器來(lái)使用。</p><p> Wamp就是Windows、Apache、MySQL集成安裝環(huán)境,即在Windows下的Apache、MySQL和PHP的服務(wù)器軟件。在該服務(wù)器上使用phpMyAdmin完成
27、對(duì)MySQL數(shù)據(jù)庫(kù)的操作,非常方便。再也不用親自去修改配置文件,再也不用到處詢(xún)問(wèn)PHP的安裝問(wèn)題,Wamp一切都搞定了[4]。</p><p> 1.5 MySQL數(shù)據(jù)庫(kù)</p><p> 首先介紹一下SQL,SQL是結(jié)構(gòu)化查詢(xún)語(yǔ)言(Structured Query Language)的簡(jiǎn)寫(xiě),最早是IBM的圣約瑟研究室為其關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)SYSTEM R 開(kāi)發(fā)的一種查詢(xún)語(yǔ)言,它的前
28、身是SQUARE語(yǔ)言。SQL語(yǔ)言結(jié)構(gòu)簡(jiǎn)約,功能強(qiáng)大,簡(jiǎn)單易學(xué),所以自從IBM公司1981年推出以來(lái),SQL語(yǔ)言得到了廣泛的應(yīng)用。如今無(wú)論是像Oracle、Sybase、Informix、SQL Server這些大型的數(shù)據(jù)庫(kù)管理系統(tǒng),還是像Visual FoxPro、PowerBuilder這些微機(jī)上常用的數(shù)據(jù)庫(kù)開(kāi)發(fā)系統(tǒng),都支持SQL作為查詢(xún)語(yǔ)言[5]。</p><p> MySQL是基于SQL的目前世界上開(kāi)源數(shù)
29、據(jù)庫(kù)中最受歡迎的產(chǎn)品之一。它是瑞典的MySQL AB公司開(kāi)發(fā)的一個(gè)小型關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng)。它適用于網(wǎng)絡(luò)開(kāi)發(fā),其數(shù)據(jù)庫(kù)可在因特網(wǎng)上隨時(shí)共享。MySQL功能強(qiáng)大、運(yùn)行速度快、可靠性高、安全性好,因此得到了廣泛的應(yīng)用。同樣作為免費(fèi)軟件的Apache、PHP和MySQL三者被認(rèn)為是Web應(yīng)用的最佳組合,分別用做Web服務(wù)器,服務(wù)器端腳本解釋器和數(shù)據(jù)庫(kù),這個(gè)組合被眾多用戶(hù)親切地稱(chēng)為APM。經(jīng)過(guò)分析總結(jié),MySQL數(shù)據(jù)庫(kù)的特性如下:</p>
30、;<p> (1) 使用C和C++編寫(xiě),并使用了多種編譯器進(jìn)行測(cè)試,保證源代碼的可移植性。</p><p> (2) 適應(yīng)性好,支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware等多種操作系統(tǒng)。</p><p> (3) 擴(kuò)展性好,為C、C++、Java、PHP等多種編程語(yǔ)言提供了API。</p><p&g
31、t; (4) 支持多線(xiàn)程,充分利用CPU資源。</p><p> (5) 采用優(yōu)化的SQL查詢(xún)算法,能有效地提高查詢(xún)速度。</p><p> (6) 既能夠作為一個(gè)單獨(dú)的應(yīng)用程序應(yīng)用在客戶(hù)端服務(wù)器網(wǎng)絡(luò)環(huán)境中,也能夠作為一個(gè)庫(kù)而嵌入到其它的軟件中提供多語(yǔ)言支持,常見(jiàn)的編碼如中文的GB2312,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名。</p><p&g
32、t; (7) 提供了TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫(kù)連接途徑。</p><p> (8) 提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫(kù)操作的管理工具。</p><p> (9) 可以處理?yè)碛猩锨f(wàn)條記錄的大型數(shù)據(jù)庫(kù)[6]。</p><p> 與其他關(guān)系數(shù)據(jù)庫(kù)一樣,數(shù)據(jù)庫(kù)數(shù)據(jù)的存儲(chǔ)層次也是由庫(kù)、表、字段三層組成,一套MySQL系統(tǒng)可以對(duì)多個(gè)庫(kù)提供管理和服務(wù),每個(gè)
33、庫(kù)由大量的表組成,每個(gè)表內(nèi)存儲(chǔ)了多條記錄,每條記錄由依靠某種關(guān)系組織在一起的多個(gè)字段組成,每個(gè)表可以假設(shè)成為一個(gè)二維數(shù)組,該數(shù)組的每個(gè)元素就是一條記錄,每條記錄的每個(gè)元素就是這條記錄的各個(gè)字段值;還可以將一個(gè)表設(shè)想成平面的表格,每條記錄就是一行,每個(gè)字段就是一列。圖1-1是MySQL的一個(gè)管理界面,展示了數(shù)據(jù)庫(kù)、表和字段的邏輯關(guān)系。</p><p> 圖1-1 MYSQL管理界面</p><
34、p> MySQL作為數(shù)據(jù)庫(kù)產(chǎn)品,是用來(lái)存儲(chǔ)、管理各種各樣數(shù)據(jù)的,每個(gè)字段都會(huì)對(duì)應(yīng)一種數(shù)據(jù)類(lèi)型。這些數(shù)據(jù)類(lèi)型和PHP程序語(yǔ)言中的有些類(lèi)似,也略有不同[7]。</p><p> MySQL支持的數(shù)據(jù)類(lèi)型有數(shù)值類(lèi)型、日期或時(shí)間類(lèi)型和字符串類(lèi)型。下面簡(jiǎn)要概述MySQL的數(shù)值類(lèi)型。</p><p> MySQL中可以使用的數(shù)值類(lèi)型一般有如下幾種:TINYINT、BOOL、SMALLINT
35、、MEDIUMINT、INT、INTEGER和BLGINT等。它們的含義及數(shù)值類(lèi)型如表1-1所示。</p><p> 表1-1 MySQL中的數(shù)值類(lèi)型</p><p><b> 2 系統(tǒng)分析</b></p><p> 2.1 系統(tǒng)可行性分析</p><p> 從以下三個(gè)方面研究系統(tǒng)的可行性:</p>
36、<p> (1) 技術(shù)可行性。硬件:計(jì)算機(jī)存儲(chǔ)容量大,運(yùn)算速度快。外設(shè)的功能好、效率高、可靠性高。系統(tǒng)軟件:使用Windows XP操作系統(tǒng)。編程語(yǔ)言:PHP是一種優(yōu)秀的編程語(yǔ)言,它是一種被廣泛使用的、開(kāi)放源代碼的腳本語(yǔ)言,非常適合于嵌入到HTML中形成動(dòng)態(tài)網(wǎng)頁(yè),其語(yǔ)法融合了C、Java和Perl的特征。應(yīng)用軟件:MYSQL數(shù)據(jù)庫(kù)。主要用于設(shè)計(jì)系統(tǒng)數(shù)據(jù)庫(kù)。</p><p> (2) 經(jīng)濟(jì)可行性。
37、從經(jīng)濟(jì)角度看,新聞發(fā)布系統(tǒng)一改傳統(tǒng)報(bào)紙傳遞信息的方法,它減少了紙張筆墨的投資成本,而且實(shí)現(xiàn)了信息傳遞的快速化、廣泛化。</p><p> (3) 操作可行性。系統(tǒng)界面清晰友好,操作簡(jiǎn)單,使用方便。用戶(hù)無(wú)需出門(mén)發(fā)布宣傳單頁(yè),只要輕輕一點(diǎn)鼠標(biāo),便可實(shí)現(xiàn)信息的廣泛、快速傳播。因此,該新聞發(fā)布系統(tǒng)在操作上是可行的。</p><p> 另外,在進(jìn)行可行性分析時(shí),需要了解和分析現(xiàn)有的系統(tǒng),并以概括
38、的形式表達(dá)對(duì)現(xiàn)有系統(tǒng)的認(rèn)識(shí)。而系統(tǒng)流程圖就是概括描繪物理系統(tǒng)的傳統(tǒng)工具。它的基本思想是用圖形符號(hào)以黑盒子形式描繪組成系統(tǒng)的每一個(gè)部件。系統(tǒng)流程圖表達(dá)的是數(shù)據(jù)在系統(tǒng)各部件之間流動(dòng)的情況,而不是對(duì)數(shù)據(jù)進(jìn)行加工處理的控制過(guò)程。系統(tǒng)流程圖的基本符號(hào)如表2-1所示。</p><p> 表2-1 系統(tǒng)流程圖基本符號(hào)</p><p> 當(dāng)一個(gè)普通用戶(hù)進(jìn)入前臺(tái)主頁(yè)后,首先可以瀏覽到當(dāng)前所有的新聞,其中
39、包括推薦的廣告信息的展示、免費(fèi)信息展示和付費(fèi)信息展示。用戶(hù)還可以進(jìn)行新聞信息發(fā)布和新聞信息檢索。如果該用戶(hù)具有管理員權(quán)限的話(huà),可以進(jìn)行登陸操作,登陸時(shí)輸入用戶(hù)名和密碼,系統(tǒng)將對(duì)其身份進(jìn)行驗(yàn)證。如果驗(yàn)證通過(guò),則可以進(jìn)入后臺(tái)主頁(yè),進(jìn)行新聞信息管理。具體流程如圖2-1所示。</p><p> 圖2-1系統(tǒng)整體流程圖</p><p> 2.2 系統(tǒng)需求分析</p><p&
40、gt; 通過(guò)對(duì)網(wǎng)站進(jìn)行詳細(xì)的需求分析后,制定了該系統(tǒng)所應(yīng)達(dá)到的總體目標(biāo)、功能目標(biāo)、欄目需求分析與數(shù)據(jù)庫(kù)需求分析。</p><p> (1) 總體目標(biāo)分析</p><p> 用Dreamweaver網(wǎng)頁(yè)制作軟件和PHP技術(shù)及MySQL數(shù)據(jù)庫(kù),在Wamp服務(wù)器環(huán)境下完成新聞的發(fā)布、查詢(xún)與刪除。使用新聞發(fā)布及管理系統(tǒng)使得新聞發(fā)布和管理變得非常輕松,用戶(hù)只需設(shè)置標(biāo)題、內(nèi)容和圖片等,其信息即可
41、成功發(fā)布,系統(tǒng)會(huì)自動(dòng)將用戶(hù)所發(fā)布的信息記錄在后臺(tái)數(shù)據(jù)庫(kù)中,并由管理員審核后展現(xiàn)在前臺(tái)頁(yè)面上。另外,管理員登陸后臺(tái)頁(yè)面可以完成新聞信息的刪除、查詢(xún)、審核和推薦的工作。</p><p> (2) 功能目標(biāo)分析</p><p> 系統(tǒng)功能由前臺(tái)與后臺(tái)協(xié)調(diào)完成。前臺(tái)共包括4個(gè)模塊,其中有:首頁(yè)展示信息、推薦廣告信息、發(fā)布信息、快速信息檢索等模塊。后臺(tái)則主要實(shí)現(xiàn)系統(tǒng)管理、后臺(tái)信息檢索、后臺(tái)信息管
42、理、數(shù)據(jù)管理等模塊。</p><p><b> (3) 欄目分析</b></p><p> 系統(tǒng)共包括4個(gè)欄目,其中有:推薦廣告信息、發(fā)布信息、快速信息檢索、與我聯(lián)系等欄目。</p><p><b> (4) 數(shù)據(jù)庫(kù)分析</b></p><p> 系統(tǒng)需要建立4張數(shù)據(jù)庫(kù)表,用于存放各個(gè)模塊的
43、數(shù)據(jù),其中有:管理員信息表 (t_admin)、企業(yè)廣告信息表 (t_adverting)、免費(fèi)發(fā)布信息表 (t_info)、付費(fèi)發(fā)布信息表 (t_leaguerinfo)。</p><p> 2.3 系統(tǒng)數(shù)據(jù)流圖</p><p> 結(jié)構(gòu)化分析方法采用數(shù)據(jù)流圖作為刻畫(huà)數(shù)據(jù)流及其處理轉(zhuǎn)換的工具。通過(guò)一些圖形符號(hào)表示數(shù)據(jù)源、數(shù)據(jù)流向、處理轉(zhuǎn)換等。數(shù)據(jù)流圖是組織中信息運(yùn)動(dòng)的抽象,是系統(tǒng)邏輯
44、模型的主要形式。數(shù)據(jù)流圖表達(dá)了數(shù)據(jù)和處理的關(guān)系。它是采用自頂向下逐層擴(kuò)展的方法,從邏輯上精確地描述系統(tǒng)具有的數(shù)據(jù)加工、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)輸入輸出及數(shù)據(jù)來(lái)源和去向等功能。</p><p> 數(shù)據(jù)流圖有以下4種基本圖形符號(hào),如圖2-2所示。</p><p> 圖2-2 數(shù)據(jù)流圖基本符號(hào)</p><p> 系統(tǒng)分層數(shù)據(jù)流圖如圖2-3頂層數(shù)據(jù)流圖、圖2-4前臺(tái)用戶(hù)新聞發(fā)布
45、數(shù)據(jù)流圖和圖2-5后臺(tái)信息管理數(shù)據(jù)流圖所示。</p><p> 圖2-3 新聞發(fā)布系統(tǒng)頂層數(shù)據(jù)流圖</p><p> 圖2-3展示了管理員和用戶(hù)進(jìn)入系統(tǒng)后對(duì)新聞發(fā)布系統(tǒng)的操作。管理員的信息都存在管理員信息表中,管理員登陸后主要進(jìn)行新聞信息的管理。普通用戶(hù)主要進(jìn)行瀏覽、發(fā)布新聞信息,并產(chǎn)生相應(yīng)的新聞發(fā)布頁(yè)面。</p><p> 圖2-4 前臺(tái)用戶(hù)新聞發(fā)布數(shù)據(jù)流圖
46、</p><p> 圖2-4展示了前臺(tái)用戶(hù)叛逆發(fā)布數(shù)據(jù)流圖。首先數(shù)據(jù)的源點(diǎn)為用戶(hù),用戶(hù)登陸系統(tǒng)后進(jìn)行新聞信息編輯即編輯要發(fā)布的新聞信息,同時(shí)將編輯后的信息存入新聞信息列表中,并由管理員進(jìn)行信息審核。</p><p> 圖2-5 后臺(tái)信息管理數(shù)據(jù)流圖</p><p> 圖2-5展示了后臺(tái)信息管理數(shù)據(jù)流圖。首先數(shù)據(jù)的源點(diǎn)為管理員,管理員登陸時(shí)輸入用戶(hù)名和密碼,系統(tǒng)
47、會(huì)進(jìn)行登陸信息確認(rèn)處理,即將用戶(hù)名和密碼與管理員信息表中的信息核對(duì)以進(jìn)行身份驗(yàn)證,身份驗(yàn)證成功后,管理員登陸后臺(tái)頁(yè)面進(jìn)行信息刪除、檢索、審核。</p><p> 2.4 系統(tǒng)數(shù)據(jù)字典</p><p> 數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型。沒(méi)有數(shù)據(jù)字典,數(shù)據(jù)流圖就不嚴(yán)格,然而,沒(méi)有數(shù)據(jù)流圖,數(shù)據(jù)字典也難以發(fā)揮作用。只有數(shù)據(jù)流圖和對(duì)數(shù)據(jù)流圖中每個(gè)元素的精確定義放在一起,才能共同構(gòu)成
48、系統(tǒng)的規(guī)格說(shuō)明。</p><p> 數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對(duì)數(shù)據(jù)流圖中包含的所有元素的定義的集合。一般說(shuō)來(lái),數(shù)據(jù)字典應(yīng)該由對(duì)下列4類(lèi)元素的定義組成。即:數(shù)據(jù)流、數(shù)據(jù)流分量(也就是數(shù)據(jù)元素)、數(shù)據(jù)存儲(chǔ)、處理。</p><p> 除了數(shù)據(jù)定義之外,數(shù)據(jù)字典中還應(yīng)當(dāng)包含關(guān)于數(shù)據(jù)的一些其他信息。典型的情況是,在數(shù)據(jù)字典中記錄數(shù)據(jù)元素的下列信息:一般信息(名字,別名,描述等),定
49、義(數(shù)據(jù)類(lèi)型,長(zhǎng)度,結(jié)構(gòu)等),使用特點(diǎn)(值的范圍,使用頻率,使用方式等),控制信息(來(lái)源,用戶(hù),使用它的程序,改變權(quán),使用權(quán)等)和分組信息(父結(jié)構(gòu),從屬結(jié)構(gòu),物理位置等)。</p><p> 數(shù)據(jù)字典最重要的用途是作為分析階段的工具。在數(shù)據(jù)字典中建立的一組嚴(yán)密一致的定義很有助于改進(jìn)分析員和用戶(hù)之間的通信,因此將消除許多可能的誤解。對(duì)數(shù)據(jù)的這一系列嚴(yán)密一致的定義也有助于改進(jìn)在不同的開(kāi)發(fā)人員或不同的開(kāi)發(fā)小組之間的通
50、信。如果要求所有開(kāi)發(fā)人員都根據(jù)公共的數(shù)據(jù)字典描述數(shù)據(jù)和設(shè)計(jì)模塊,則能夠避免許多麻煩的接口問(wèn)題。它給數(shù)據(jù)流程圖中每個(gè)成分加以定義和說(shuō)明。換句話(huà)說(shuō),數(shù)據(jù)流程圖只能給出系統(tǒng)邏輯功能的一個(gè)總框架,而缺乏詳細(xì)、具體的內(nèi)容。數(shù)據(jù)字典對(duì)數(shù)據(jù)流程圖的各種成分起注解、說(shuō)明作用,給這些成分賦予實(shí)際的內(nèi)容。除此以外,數(shù)據(jù)字典還要對(duì)系統(tǒng)分析中其他需要說(shuō)明的問(wèn)題進(jìn)行定義和說(shuō)明。最后,數(shù)據(jù)字典是開(kāi)發(fā)數(shù)據(jù)庫(kù)的第一步,而且是很有價(jià)值的一步。</p>&l
51、t;p> 目前,數(shù)據(jù)字典幾乎總是作為CASE“結(jié)構(gòu)化分析與設(shè)計(jì)工具”的一部分實(shí)現(xiàn)的。在開(kāi)發(fā)小型軟件系統(tǒng)時(shí),建議采用卡片形式書(shū)寫(xiě)數(shù)據(jù)字典。表2-2、表2-3、表2-4和表2-5分別給出了系統(tǒng)數(shù)據(jù)流圖中部分?jǐn)?shù)據(jù)流和數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)字典。</p><p> 表2-2 數(shù)據(jù)流新聞信息</p><p> 表2-2展示了新聞信息這個(gè)數(shù)據(jù)流的數(shù)據(jù)字典。其中包括了數(shù)據(jù)流名稱(chēng),即新聞信息,數(shù)據(jù)流別
52、名,以及對(duì)新聞信息這個(gè)數(shù)據(jù)流的簡(jiǎn)述,即用戶(hù)可以根據(jù)信息分類(lèi)填寫(xiě)信息,并可以發(fā)布信息,數(shù)據(jù)流的來(lái)源為用戶(hù),數(shù)據(jù)流的去向?yàn)樾侣勑畔⒈怼?lt;/p><p> 表2-3 數(shù)據(jù)流用戶(hù)名</p><p> 表2-3展示了用戶(hù)名這個(gè)數(shù)據(jù)流的數(shù)據(jù)字典,其中包括數(shù)據(jù)流名稱(chēng)(用戶(hù)名),沒(méi)有別名,這個(gè)數(shù)據(jù)流的簡(jiǎn)述如下:管理員登陸時(shí)必須填寫(xiě)的信息。數(shù)據(jù)來(lái)源是管理員,數(shù)據(jù)去向是管理員信息表。</p>
53、<p> 表2-4 數(shù)據(jù)流密碼</p><p> 表2-4展示了密碼作為數(shù)據(jù)流時(shí)的數(shù)據(jù)字典,包括了數(shù)據(jù)流名稱(chēng)(密碼),沒(méi)有別名,簡(jiǎn)述,即管理員登陸密碼。數(shù)據(jù)流來(lái)源為管理員,數(shù)據(jù)流去向?yàn)楣芾韱T信息表。</p><p> 表2-5 數(shù)據(jù)存儲(chǔ)管理員信息表</p><p> 表2-5展示了管理員信息表作為數(shù)據(jù)存儲(chǔ)時(shí)的數(shù)據(jù)字典,其名稱(chēng)為管理員信息表,沒(méi)有別
54、名,簡(jiǎn)述,數(shù)據(jù)流來(lái)源為管理員。數(shù)據(jù)流去向?yàn)樯矸蒡?yàn)證,其組成元素為身份、用戶(hù)名、密碼。并說(shuō)明了加工邏輯。</p><p><b> 3 系統(tǒng)總體設(shè)計(jì)</b></p><p> 經(jīng)過(guò)可行性分析和需求分析階段的工作,系統(tǒng)必須“做什么”已經(jīng)清楚了,而對(duì)于“怎樣做”的問(wèn)題則需要總體設(shè)計(jì)來(lái)回答。系統(tǒng)在該階段的工作分為:系統(tǒng)結(jié)構(gòu)設(shè)計(jì)、系統(tǒng)運(yùn)行環(huán)境配置、系統(tǒng)功能設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)。
55、</p><p> 3.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)</p><p> 系統(tǒng)采用瀏覽器/服務(wù)器結(jié)構(gòu)。由用戶(hù)界面層、業(yè)務(wù)邏輯層和數(shù)據(jù)庫(kù)層三個(gè)層面構(gòu)成。如圖3-1所示。</p><p> 圖3-1 系統(tǒng)體系結(jié)構(gòu)</p><p> 在用戶(hù)界面層,用戶(hù)使用瀏覽器向服務(wù)器發(fā)送請(qǐng)求,接收用戶(hù)輸入的信息,服務(wù)器端給予響應(yīng)后,將服務(wù)器端傳過(guò)來(lái)的數(shù)據(jù)呈現(xiàn)給用戶(hù)。
56、</p><p> 業(yè)務(wù)邏輯層則是在WampServer服務(wù)器啟動(dòng)的環(huán)境下,使得用戶(hù)通過(guò)PHP頁(yè)面提交請(qǐng)求,其中,在頁(yè)面中采用表單實(shí)現(xiàn)用戶(hù)與服務(wù)器的交互。業(yè)務(wù)邏輯層通過(guò)與數(shù)據(jù)庫(kù)連接將數(shù)據(jù)提交給數(shù)據(jù)庫(kù),并接收來(lái)自數(shù)據(jù)庫(kù)的響應(yīng),將結(jié)果反饋給客戶(hù)端瀏覽器。 </p><p> 數(shù)據(jù)庫(kù)MySQL是系統(tǒng)的數(shù)據(jù)層。通過(guò)處理業(yè)務(wù)邏輯所提交的數(shù)據(jù),將操作結(jié)果返回給服務(wù)器,從而為業(yè)務(wù)邏輯層提供數(shù)據(jù)服務(wù)。
57、比如返回用戶(hù)查詢(xún)信息、存儲(chǔ)用戶(hù)提交的信息等[8]。</p><p> 3.2 系統(tǒng)運(yùn)行環(huán)境配置</p><p> 系統(tǒng)采用Windows操作系統(tǒng),并結(jié)合WampServer服務(wù)器,使用MySQL數(shù)據(jù)庫(kù)作為后臺(tái)數(shù)據(jù)庫(kù)系統(tǒng),在Dreamweaver網(wǎng)頁(yè)制作軟件輔助下,將PHP語(yǔ)言嵌入到HTML語(yǔ)言中,完成頁(yè)面設(shè)計(jì)與功能設(shè)計(jì)。</p><p> 此外,為能夠成功調(diào)
58、試系統(tǒng),必須在Dreamweaver環(huán)境下設(shè)置好本地站點(diǎn),遠(yuǎn)程站點(diǎn)和測(cè)試服務(wù)器參數(shù)。</p><p> 3.3 系統(tǒng)功能設(shè)計(jì)</p><p> 系統(tǒng)的功能模塊可分為兩大類(lèi):前臺(tái)顯示新聞、后臺(tái)管理信息。</p><p> 一個(gè)好的網(wǎng)站前臺(tái)就如同一身合體、漂亮的衣服,它不僅能夠提升網(wǎng)站的整體形象,更能達(dá)到良好地推銷(xiāo)自我、展示實(shí)力的目的。因此,網(wǎng)站前臺(tái)頁(yè)面不僅要求
59、能夠準(zhǔn)確、清晰地顯示新聞信息,而且要讓用戶(hù)瀏覽起來(lái)覺(jué)得友好美觀(guān),以提高網(wǎng)站訪(fǎng)問(wèn)量。后臺(tái)則主要注重?cái)?shù)據(jù)的管理,處理上要求操作方便,維護(hù)好數(shù)據(jù)的完整性與一致性,盡量提高工作人員的工作效率,提高實(shí)時(shí)性。系統(tǒng)各功能模塊如下:</p><p> 前臺(tái)信息顯示模塊:實(shí)現(xiàn)新聞的分類(lèi)顯示,推薦的新聞信息,新聞圖片顯示,用戶(hù)簡(jiǎn)要的信息顯示,比如聯(lián)系方式。</p><p> 信息檢索模塊:前臺(tái)用戶(hù)可按關(guān)鍵
60、字、新聞分類(lèi)等進(jìn)行新聞信息檢索。后臺(tái)管理員可以按選定的條件檢索不同類(lèi)別信息。</p><p> 信息管理模塊:主要實(shí)現(xiàn)網(wǎng)站信息的添加、刪除、查詢(xún)與更新。主要是后臺(tái)添加、刪除、查詢(xún)、審核、推薦新聞信息,每條新聞信息都可以由管理員推薦并顯示于前臺(tái)頁(yè)面。另外,為了增加網(wǎng)站的友好性,使用了FCKeditor所見(jiàn)即所得編輯器。</p><p> 登陸模塊:系統(tǒng)管理員擁有最高權(quán)限,可以登陸網(wǎng)站后臺(tái)
61、數(shù)據(jù)庫(kù),進(jìn)行新聞信息的添加、刪除、審核、推薦等操作。它擁有固定的用戶(hù)名和密碼。登陸時(shí)需要進(jìn)行身份驗(yàn)證,確保了后臺(tái)數(shù)據(jù)庫(kù)信息的安全。</p><p> 數(shù)據(jù)訪(fǎng)問(wèn)模塊:該模塊使用數(shù)據(jù)庫(kù)實(shí)現(xiàn)系統(tǒng)的數(shù)據(jù)管理與維護(hù)。保證前臺(tái)與后臺(tái)的協(xié)調(diào)性和一致性。</p><p> 3.4 數(shù)據(jù)庫(kù)設(shè)計(jì)</p><p> 系統(tǒng)使用MySQL數(shù)據(jù)庫(kù)作為后臺(tái)數(shù)據(jù)庫(kù)。所建立的數(shù)據(jù)庫(kù)為x301
62、5,所建立的表及其結(jié)構(gòu)如下:</p><p><b> (1) 廣告信息表</b></p><p> 名稱(chēng):t_adverting</p><p> 說(shuō)明:廣告信息表主要用于存放前臺(tái)用戶(hù)發(fā)布信息時(shí)添加的廣告信息,該表的字段包括廣告的自增長(zhǎng)id標(biāo)識(shí)、新聞信息標(biāo)題、新聞內(nèi)容、新聞添加時(shí)的日期、新聞添加時(shí)附帶的圖片的路徑以及審核狀態(tài)。廣告信息表
63、的結(jié)構(gòu)如表3-1所示。</p><p> 表3-1 廣告信息表</p><p> (2) 免費(fèi)供求信息表</p><p><b> 名稱(chēng):t_info</b></p><p> 說(shuō)明:免費(fèi)供求信息表主要用于存放用戶(hù)添加的免費(fèi)供求信息,該表的字段包括新聞的自增長(zhǎng)id標(biāo)識(shí)、新聞信息類(lèi)別、新聞標(biāo)題、新聞內(nèi)容、新聞發(fā)布人
64、、新聞發(fā)布人聯(lián)系電話(huà)、審核狀態(tài)、新聞發(fā)布時(shí)間、新聞發(fā)布時(shí)附帶的圖片的路徑。免費(fèi)供求信息表的結(jié)構(gòu)如表3-2所示。</p><p> 表3-2 免費(fèi)供求信息表</p><p><b> (3) 付費(fèi)信息表</b></p><p> 名稱(chēng):t_leaguerinfo</p><p> 說(shuō)明:付費(fèi)信息表主要用于存放用戶(hù)發(fā)
65、布信息時(shí)添加的付費(fèi)信息,該表的字段主要包括新聞信息的自增長(zhǎng)、新聞標(biāo)題、新聞信息類(lèi)別、新聞內(nèi)容、新聞發(fā)布人、新聞發(fā)布人聯(lián)系電話(huà)、新聞發(fā)布時(shí)間、審核狀態(tài)、新聞?dòng)行Ы刂谷掌?、新聞發(fā)布時(shí)附帶的圖片的路徑。付費(fèi)信息表的結(jié)構(gòu)如表3-3所示。</p><p> 表3-3 付費(fèi)信息表</p><p> (4) 管理員信息表</p><p> 名稱(chēng):t_admin</p&
66、gt;<p> 說(shuō)明:管理員信息表主要用于存放管理員的基本信息,該表的字段主要包括管理員編號(hào)、管理員登陸時(shí)的用戶(hù)名、登陸密碼。管理員信息表的結(jié)構(gòu)如表3-4所示。</p><p> 表3-4 管理員信息表</p><p> 4 系統(tǒng)詳細(xì)設(shè)計(jì)與實(shí)現(xiàn)</p><p> 詳細(xì)設(shè)計(jì)階段的根本目標(biāo)是確定應(yīng)該怎樣具體地實(shí)現(xiàn)所要求的系統(tǒng),也就是說(shuō),經(jīng)過(guò)這個(gè)階段
67、的設(shè)計(jì)工作,應(yīng)該得出對(duì)目標(biāo)系統(tǒng)的精確描述,從而在編碼階段可以把這個(gè)描述直接翻譯成用某種程序設(shè)計(jì)語(yǔ)言書(shū)寫(xiě)的程序。而實(shí)現(xiàn)階段則通常包括編碼和測(cè)試。編碼時(shí)所選用的程序語(yǔ)言的特點(diǎn)及編碼風(fēng)格也將對(duì)程序的可靠性、可讀性、可測(cè)試性產(chǎn)生深遠(yuǎn)的影響[9]。</p><p> 設(shè)計(jì)從兩個(gè)方面描述了主要部分模塊的功能設(shè)計(jì)和界面設(shè)計(jì),并采用編碼來(lái)實(shí)現(xiàn)其功能。包括前臺(tái)展示模塊和后臺(tái)管理模塊。其中,前臺(tái)展示模塊又分為首頁(yè)的設(shè)計(jì)與實(shí)現(xiàn)、推薦
68、信息頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)、信息發(fā)布頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)、信息檢索頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)。后臺(tái)管理模塊分為登陸模塊設(shè)計(jì)與實(shí)現(xiàn)、后臺(tái)信息檢索設(shè)計(jì)與實(shí)現(xiàn)、信息管理設(shè)計(jì)與實(shí)現(xiàn)、數(shù)據(jù)訪(fǎng)問(wèn)模塊設(shè)計(jì)與實(shí)現(xiàn)。</p><p> 4.1 前臺(tái)展示模塊</p><p> 對(duì)新聞網(wǎng)站來(lái)說(shuō),前臺(tái)需要展示發(fā)布的新聞信息,用戶(hù)可以及時(shí)查看詳細(xì)的新聞信息,并且前臺(tái)首頁(yè)中提供關(guān)鍵字及分類(lèi)搜索的功能,可以更詳盡的查看新聞信息。管理員用戶(hù)
69、可以通過(guò)登陸窗口進(jìn)入后臺(tái),進(jìn)行對(duì)網(wǎng)站的管理操作[5]。</p><p> 4.1.1 首頁(yè)的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 系統(tǒng)前臺(tái)首頁(yè)采取動(dòng)態(tài)加載各頁(yè)面的設(shè)計(jì)思想,而各個(gè)頁(yè)面的設(shè)計(jì)主要應(yīng)用表格、文字、圖片合一體的設(shè)計(jì)方法。首頁(yè)由以下幾個(gè)頁(yè)面構(gòu)成:頭部頁(yè)面top.php、主體頁(yè)面main.php、左部頁(yè)面left.php、底部頁(yè)面bottom.php等。在首頁(yè)中用戶(hù)可進(jìn)行新聞瀏覽、新聞
70、發(fā)布、新聞檢索等。管理員可以通過(guò)管理登陸鏈接進(jìn)入后臺(tái)管理頁(yè)面。首頁(yè)如圖4-1所示。</p><p><b> 圖4-1 新聞首頁(yè)</b></p><p> 頭部頁(yè)面:top.php。如圖4-2所示。</p><p><b> 圖4-2 新聞?lì)^部</b></p><p> 在該頁(yè)面中,主要實(shí)現(xiàn)
71、了日期顯示及管理員登陸功能,其中日期顯示功能代碼如下:</p><p><b> <?php</b></p><p> $w=date("w");</p><p> switch($w)</p><p><b> {</b></p><p>
72、 case $w==0; $x="星期天";break;</p><p> case $w==1; $x="星期一";break;</p><p> case $w==2; $x="星期二";break;</p><p> case $w==3; $x="星期三";break;&
73、lt;/p><p> case $w==4; $x="星期四";break;</p><p> case $w==5; $x="星期五";break;</p><p> case $w==6; $x="星期六";break;</p><p><b> }</b&g
74、t;</p><p> $y= date("Y年");</p><p> $m= date("m月d日");</p><p> $s=str_replace($y,"<font size='3' color='#0000FF' face='隸書(shū)'>&l
75、t;div align='center' </p><p> >".$y."</center></font>",$y);</p><p> $m=str_replace($m,"<font size='2' color='#0000FF' face='隸書(shū)
76、'><div align='center' >".$m."</center></font>",$m);</p><p> $r=str_replace($x,"<STRONG><font size='3' color='#FF0066' face='
77、隸書(shū)'><div align='center' >".$x."</center></font></STRONG>",$x);</p><p> echo $s.$m.$r;</p><p><b> ?></b></p><p>
78、; 左部頁(yè)面:left.php。如圖4-3所示。</p><p><b> 圖4-3 左部頁(yè)面</b></p><p> 在該頁(yè)面上可以展示已推薦的廣告信息,進(jìn)行發(fā)布信息以及信息檢索。當(dāng)點(diǎn)擊推薦廣告信息欄目中的任意一個(gè)鏈接時(shí),可以對(duì)此信息進(jìn)行詳細(xì)顯示。當(dāng)點(diǎn)擊發(fā)布信息中的任意一個(gè)鏈接時(shí),可以實(shí)現(xiàn)相應(yīng)的信息發(fā)布功能。同樣,快速信息檢索欄目中,當(dāng)輸入查詢(xún)條件,選擇查詢(xún)
79、類(lèi)型時(shí)可以進(jìn)行信息檢索。</p><p> 主體頁(yè)面:main.php</p><p> 在該頁(yè)面中顯示了已經(jīng)審核通過(guò)的幾條信息,分為付費(fèi)信息專(zhuān)區(qū)和免費(fèi)信息專(zhuān)區(qū)。其界面如圖4-4所示。</p><p><b> 圖4-4新聞主體</b></p><p> 凡能顯示于該頁(yè)面中的信息皆為已經(jīng)審核通過(guò)的信息,即使用SQ
80、L查詢(xún)語(yǔ)言從后臺(tái)數(shù)據(jù)表中依據(jù)查詢(xún)條件查詢(xún)出的信息。其中在該處使用到了付費(fèi)信息表和免費(fèi)供求信息表,部分查詢(xún)代碼如下:</p><p><b> <?php</b></p><p> include("conn/conn.php");</p><p> $sql="select * from t_leagu
81、erinfo where checkstate=1 order by fdate limit 0 ,2";</p><p> $s=mysql_query($sql);</p><p> $row=mysql_fetch_array($s);</p><p><b> if($row){</b></p><p
82、><b> do{</b></p><p> ?>/*從付費(fèi)信息表中查詢(xún)出審核狀態(tài)為1的信息*/</p><p><b> <?php</b></p><p> include("conn/conn.php");</p><p> $sql="
83、;select * from t_info where checkstate=1 order by date desc limit 0 ,2";</p><p> $s=mysql_query($sql);</p><p> $row=mysql_fetch_array($s);</p><p><b> if($row){</b&g
84、t;</p><p><b> do{</b></p><p> ?>/*從免費(fèi)供求信息表中查詢(xún)出審核狀態(tài)為1的信息*/</p><p> ?。?)底部頁(yè)面:bottom.php</p><p> 該頁(yè)面制作簡(jiǎn)單,主要包含了一些版權(quán)信息和聯(lián)系郵箱,使得整個(gè)網(wǎng)站頁(yè)面看起來(lái)完整而大方。界面如圖4-5所示。<
85、/p><p><b> 圖4-5 底部頁(yè)面</b></p><p> 4.1.2 推薦信息頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)</p><p> 推薦信息頁(yè)面的作用體現(xiàn)在它可以在首頁(yè)中展示已推薦的廣告信息。這些信息是通過(guò)查詢(xún)語(yǔ)言從后臺(tái)數(shù)據(jù)庫(kù)中查詢(xún)出來(lái)的,在此用到的數(shù)據(jù)表是廣告信息表,主要查詢(xún)?cè)谠摫碇袑徍送ㄟ^(guò)的信息,并將這些信息標(biāo)題在前臺(tái)顯示出來(lái)。當(dāng)用戶(hù)點(diǎn)擊任一新
86、聞標(biāo)題(比如“紫雨精典”)時(shí),可以展示出該條信息的詳細(xì)內(nèi)容。其主要代碼如下:</p><p><b> <?php </b></p><p> include("conn/conn.php");</p><p> $sql="SELECT * FROM `t_adverting` where check
87、state=1 order by date desc LIMIT 0 ,8";</p><p> $sq=mysql_query($sql);</p><p> $r=mysql_fetch_array($sq);</p><p><b> if($r){</b></p><p><b> d
88、o {</b></p><p><b> ?></b></p><p> 效果如圖4-6和圖4-7所示。</p><p> 圖4-6 推薦廣告信息展示</p><p> 在圖4-6中展示了廣告信息表中審核通過(guò)了的信息的標(biāo)題,這些標(biāo)題均以鏈接的形式展示,用戶(hù)點(diǎn)擊其中任一帶有鏈接的標(biāo)題,都可以顯示出
89、該條信息的詳細(xì)說(shuō)明。下面以標(biāo)題“紫雨精典”為例展示了該功能,點(diǎn)擊“紫雨精典”后展示的詳細(xì)信息如圖4-7所示。</p><p> 圖4-7 詳細(xì)信息顯示</p><p> 4.1.3 信息發(fā)布頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)</p><p> 信息發(fā)布頁(yè)面有付費(fèi)信息發(fā)布、免費(fèi)信息發(fā)布、發(fā)布企業(yè)廣告三個(gè)主要頁(yè)面構(gòu)成。下面以付費(fèi)信息發(fā)布頁(yè)面為例介紹。</p><
90、p> 當(dāng)用戶(hù)點(diǎn)擊付費(fèi)信息發(fā)布鏈接時(shí),會(huì)跳出付費(fèi)信息發(fā)布頁(yè)面。供用戶(hù)發(fā)布付費(fèi)信息。在付費(fèi)信息界面上,會(huì)對(duì)用戶(hù)的輸入格式進(jìn)行限制。并且使用了網(wǎng)頁(yè)所見(jiàn)即所得編輯器FCKeditor,增加了頁(yè)面的友好性,當(dāng)用戶(hù)發(fā)布信息成功時(shí),會(huì)跳出成功提示。以下代碼主要實(shí)現(xiàn)用戶(hù)發(fā)布信息時(shí)限制用戶(hù)輸入格式的功能,并且展示了使用FCKeditor類(lèi)的代碼。其主要代碼如下:</p><p> <script language=
91、"javascript"></p><p> function checkform(fform) </p><p><b> {</b></p><p> if(fform.title.value=='')</p><p><b> {</b><
92、;/p><p> alert("標(biāo)題不能為空");</p><p> fform.focus();</p><p> return false;</p><p><b> }</b></p><p> if(fform.type.value=='')<
93、;/p><p><b> {</b></p><p> alert("類(lèi)型不能為空");</p><p> fform.focus();</p><p> return false;</p><p><b> }</b></p><
94、;p> if(fform.linkman.value=='')</p><p><b> {</b></p><p> alert("聯(lián)系人不能為空");</p><p> fform.focus();</p><p> return false;</p>
95、<p><b> }</b></p><p> var pattern = /^((\d{3,4})|(\d{3,4}-))?(\d{7,8}$)|(\d{11}$)/;</p><p> if(!pattern.test(fform.tel.value))</p><p><b> {</b><
96、/p><p> alert("聯(lián)系電話(huà)格式不正確");</p><p> fform.focus();</p><p> return false;</p><p><b> }</b></p><p> var pat = /^([1-3][0-6][0-5]|[1-9
97、]\d{1}|[1-9])$/;</p><p> if(!pat.test(fform.showday.value))</p><p><b> {</b></p><p> alert("發(fā)布時(shí)間格式不對(duì)");</p><p> fform.focus();</p><
98、p> return false;</p><p><b> }</b></p><p> if(fform.upfile.value=='')</p><p><b> {</b></p><p> alert("上傳文件不能為空");</p
99、><p> fform.focus();</p><p> return false;</p><p><b> }</b></p><p> if(fform.content.value=='')</p><p><b> {</b></p>
100、;<p> alert("內(nèi)容不能為空");</p><p> fform.focus();</p><p> return false;</p><p><b> }</b></p><p><b> }</b></p><p&g
101、t;<b> --></b></p><p> </script>/*使用正則表達(dá)式限制用戶(hù)輸入文本的格式*/</p><p><b> <?php </b></p><p> include("FCKeditor/fckeditor.php");</p>
102、<p> $sBasePath=$_SERVER['PHP_SELF'];</p><p> $sBasePath=dirname($sBasePath).'/FCKeditor/';</p><p> $oFCKeditor=new FCKeditor('sss');</p><p> $oFCKe
103、ditor->BasePath=$sBasePath;</p><p> ?>/*FCKeditor類(lèi)的使用*/</p><p> 效果如圖4-8所示。</p><p> 圖4-8 付費(fèi)信息發(fā)布</p><p> 4.1.4 信息檢索頁(yè)面設(shè)計(jì)與實(shí)現(xiàn)</p><p> 用戶(hù)在瀏覽首頁(yè)時(shí),在快速查詢(xún)
104、欄目中可以進(jìn)行信息查詢(xún)。輸入關(guān)鍵字并選擇新聞分類(lèi)進(jìn)行查詢(xún),此處信息查詢(xún)用到了SQL查詢(xún)語(yǔ)句,該查詢(xún)語(yǔ)句主要從免費(fèi)供求信息表中查詢(xún)符合條件的信息,將查詢(xún)到的結(jié)果展示給用戶(hù),以滿(mǎn)足用戶(hù)查詢(xún)的要求。其主要代碼如下:</p><p><b> <?php</b></p><p> include("conn/conn.php");</p&g
105、t;<p> $t=$_POST['type'];</p><p> $c=$_POST['content'];</p><p> $sql="select * from t_info where type='$t' and checkstate=1 and</p><p> conte
106、nt like '%$c%' or linkman like '%$c%' or tel like '%$c%' or title like '%$c%'";</p><p> $sq=mysql_query($sql);</p><p> ?>/*使用post方式向表中傳遞信息類(lèi)型和用戶(hù)輸入的關(guān)鍵字信
107、息,并用SQL查詢(xún)語(yǔ)句從數(shù)據(jù)表中根據(jù)查詢(xún)條件進(jìn)行信息檢索*/</p><p><b> <?php</b></p><p> while($s=mysql_fetch_array($sq))</p><p> ?>/*信息檢索時(shí)從后臺(tái)數(shù)據(jù)表中查詢(xún)相關(guān)信息*/</p><p> 界面展示如圖4-9和圖4
108、-10所示。</p><p><b> 圖4-9信息檢索</b></p><p> 該例中用戶(hù)在該界面中輸入查詢(xún)條件“家教”,選擇信息類(lèi)型“求職信息”后點(diǎn)擊信息檢索圖標(biāo),系統(tǒng)將信息檢索結(jié)果展示給用戶(hù),并將查詢(xún)條件中輸入的字以紅色標(biāo)記出來(lái)。如圖4-10所示。</p><p> 圖4-10 信息檢索結(jié)果</p><p>
109、; 4.2 后臺(tái)管理模塊</p><p> 前臺(tái)信息展示模塊可以說(shuō)已經(jīng)完成了系統(tǒng)前臺(tái)的整體框架,展示了系統(tǒng)的風(fēng)格,能夠?yàn)橛脩?hù)清晰而準(zhǔn)確地顯示新聞信息,但若實(shí)現(xiàn)前后臺(tái)信息的一致性和整個(gè)系統(tǒng)的協(xié)調(diào)性,還需要后臺(tái)和模塊的支持。其中,后臺(tái)包括登陸模塊設(shè)計(jì)與實(shí)現(xiàn)、后臺(tái)信息檢索模塊設(shè)計(jì)與實(shí)現(xiàn)、信息管理模塊登陸與實(shí)現(xiàn)、數(shù)據(jù)訪(fǎng)問(wèn)模塊設(shè)計(jì)與實(shí)現(xiàn)。</p><p> 4.2.1 登陸模塊設(shè)計(jì)與實(shí)現(xiàn)&
110、lt;/p><p> 系統(tǒng)管理模塊的目標(biāo)是實(shí)現(xiàn)系統(tǒng)安全,保護(hù)系統(tǒng)數(shù)據(jù)不被竊取,保證只有管理員能夠登陸。管理員可以通過(guò)首頁(yè)上的鏈接,即“管理登陸”,進(jìn)入網(wǎng)站后臺(tái)。管理員登陸時(shí)需要進(jìn)行身份驗(yàn)證,其身份驗(yàn)證信息主要是用戶(hù)名和用戶(hù)密碼。此處在管理員信息表中已經(jīng)指定了特定管理員的信息,當(dāng)輸入管理員基本信息時(shí),系統(tǒng)會(huì)自動(dòng)對(duì)輸入的信息與后臺(tái)數(shù)據(jù)表中的信息進(jìn)行核對(duì)。若一致,則登陸成功;否則,登陸失敗。具體實(shí)現(xiàn)代碼如下:</p
111、><p> <script language="javascript"></p><p> function chkinput(form){</p><p> if(form.name.value==""){</p><p> alert("請(qǐng)輸入用戶(hù)名!");<
112、;/p><p> form.name.select();</p><p> return(false);</p><p><b> }</b></p><p> if(form.pwd.value==""){</p><p> alert("請(qǐng)輸入用戶(hù)密碼!&q
113、uot;);</p><p> form.pwd.select();</p><p> return(false);</p><p><b> }</b></p><p> return(true);</p><p><b> }</b></p>&l
114、t;p> </script>/*要求管理員登陸時(shí)填寫(xiě)相關(guān)信息*/</p><p> 管理員登陸界面如圖4-11所示。</p><p> 圖4-11管理員登陸界面</p><p> 4.2.2 后臺(tái)信息檢索設(shè)計(jì)與實(shí)現(xiàn)</p><p> 管理員登陸成功后,可以對(duì)后臺(tái)信息進(jìn)行分類(lèi)檢索。此處,管理員可以實(shí)現(xiàn)的檢索如下:根
115、據(jù)推薦狀態(tài),可以實(shí)現(xiàn)已推薦、未推薦和全部信息等條件的檢索。根據(jù)付費(fèi)狀態(tài),可以實(shí)現(xiàn)已付費(fèi)、未付費(fèi)和全部信息等條件的檢索。根據(jù)審核狀態(tài),可以實(shí)現(xiàn)已審核、未審核和全部信息等條件的檢索。各種條件的檢索的實(shí)現(xiàn)都是基于SQL查詢(xún)語(yǔ)言的運(yùn)用,用戶(hù)所得到的查詢(xún)頁(yè)面都是查詢(xún)結(jié)果的顯示。系統(tǒng)按照檢索條件進(jìn)行查詢(xún),并反饋結(jié)果給用戶(hù)。其界面如圖4-12所示。</p><p> 圖4-12 后臺(tái)信息檢索頁(yè)面</p><
116、;p> 這里以根據(jù)推薦狀態(tài)下各查詢(xún)條件進(jìn)行查詢(xún)?yōu)槔?。首先,該部分使用表單,以?shí)現(xiàn)提交功能,另外,使用組件實(shí)現(xiàn)各查詢(xún)條件的選擇。其部分代碼如下:</p><p> <form name="form1" action="f_adver.php" target="mainFrame"></p><p> <
117、fieldset class="STYLE1" style="width:218; height:90"></p><p><b> <p></b></p><p> <legend><span class="STYLE7">★推薦狀態(tài)★ </span>
118、;</legend></p><p><b> </p></b></p><p> <p class="STYLE4"></p><p> <input type="radio" name="state" value="1&qu
119、ot; checked="checked" /></p><p><b> 已推薦 </b></p><p> <input type="radio" name="state" value="0" /></p><p><b> 未
120、推薦 </b></p><p> <input type="radio" name="state" value="all" /></p><p><b> 全部</p></b></p><p> <p class="STYLE4
121、"></p><p> <input type="submit" name="submit3" value="檢索" align="middle" /></p><p><b> </p></b></p><p> &l
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 畢業(yè)論文-基于php+mysql的學(xué)生選課系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)論文--php+mysql人才招聘管理系統(tǒng)
- php+mysql圖書(shū)管理系統(tǒng)畢業(yè)設(shè)計(jì)畢業(yè)論文
- 畢業(yè)論文 ——基于php+mysql的微信平臺(tái)圖書(shū)管理系統(tǒng)
- 畢業(yè)論文 ——基于php+mysql的微信平臺(tái)圖書(shū)管理系統(tǒng)
- 基于php+mysql的寵貝網(wǎng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于php+mysql的眾籌平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于PHP+MySQL的電商平臺(tái)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 基于php+mysql的惠賺金融的設(shè)計(jì)與實(shí)現(xiàn)
- 基于PHP+MySQL的電子商務(wù)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).pdf
- php+mysql網(wǎng)上購(gòu)物系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)論文——基于php+mysql的微信公眾平臺(tái)的接口開(kāi)發(fā)
- php+mysql網(wǎng)上購(gòu)物系統(tǒng)畢業(yè)設(shè)計(jì)
- 基于PHP+MySQL的寵貝網(wǎng)的設(shè)計(jì)與實(shí)現(xiàn).doc
- 畢業(yè)論文——基于php+mysql的微信公眾平臺(tái)的接口開(kāi)發(fā)
- 基于PHP+MySQL的惠賺金融的設(shè)計(jì)與實(shí)現(xiàn).doc
- 基于PHP+MySQL的眾籌平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn).doc
- 基于php+mysql技術(shù)bbs論壇畢業(yè)設(shè)計(jì)
- 基于php的新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于php的新聞發(fā)布系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
評(píng)論
0/150
提交評(píng)論