版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p> 本 科 生 畢 業(yè) 設(shè) 計 報 告</p><p> 設(shè) 計 題 目 基于PHP的系網(wǎng)站建設(shè)及后臺實現(xiàn) </p><p> 學(xué) 生 姓 名 XX X </p><p> 學(xué) 號 200XXXXXX </
2、p><p> 專 業(yè) 名 稱 XXXXXXX </p><p> 作品提交日期 XXXX年X月X日 </p><p> 申請學(xué)位級別 理學(xué)學(xué)士學(xué)位 </p><p> 作品評審等級
3、 </p><p> 指導(dǎo)教師姓名 XXX </p><p> 職 稱 講師 </p><p> 工 作 單 位 XXXXXXXX </p
4、><p> 學(xué)位授予單位 XXXXXXXXX </p><p><b> XXXXXX理學(xué)院</b></p><p><b> XXXXX年X月</b></p><p><b> 目 錄</b></p><
5、p><b> 1.引言1</b></p><p> 2.系統(tǒng)簡要說明1</p><p> 3.系統(tǒng)總體設(shè)計1</p><p> 3.1管理員模塊1</p><p> 3.2系統(tǒng)總體結(jié)構(gòu)圖1</p><p><b> 3.3開發(fā)工具2</b><
6、;/p><p> 4.系統(tǒng)實現(xiàn)過程2</p><p> 4.1數(shù)據(jù)庫設(shè)計2</p><p> 4.2前臺頁面的實現(xiàn)3</p><p> 4.2.1網(wǎng)站的標(biāo)志3</p><p> 4.2.2主菜單3</p><p> 4.2.3導(dǎo)航菜單3</p><p>
7、; 4.2.4新聞模塊3</p><p> 4.2.5圖文模塊4</p><p> 4.2.6搜索功能的實現(xiàn)4</p><p> 4.2.7滾動圖片的讀取4</p><p> 4.3后臺管理的實現(xiàn)5</p><p> 4.3.1登陸模塊5</p><p> 4.3.2管
8、理員模塊5</p><p> 4.3.3修改網(wǎng)站標(biāo)志6</p><p> 4.3.4一級菜單管理7</p><p> 4.3.5導(dǎo)航菜單、圖片內(nèi)容和系內(nèi)新聞管理8</p><p><b> 5.系統(tǒng)效果圖8</b></p><p> 5.1前臺頁面效果圖8</p>
9、<p> 5.2后臺頁面效果圖10</p><p> 6.編程過程中的幾個細節(jié)問題10</p><p> 6.1 標(biāo)題過長時的處理10</p><p> 6.2 編碼問題11</p><p> 6.3 ID值的多次傳遞11</p><p> 7.總結(jié)與收獲12</p>
10、<p><b> 8.致謝12</b></p><p><b> 參考資料13</b></p><p> 附錄Ⅰ 數(shù)據(jù)表詳細說明14</p><p> 附錄Ⅱ 系統(tǒng)文件說明16</p><p> 基于PHP的系網(wǎng)站建設(shè)及后臺實現(xiàn)</p><p>
11、<b> XXX</b></p><p> ?。╔XXXXXXX系20XX級XXXX XX XX XXXXXX)</p><p><b> 指導(dǎo)教師:XXX</b></p><p> 摘要:因特網(wǎng)已經(jīng)成為一個信息發(fā)布的重要工具[1]。系級教學(xué)單位有各種信息發(fā)布的需求,如文檔、新聞、通知等。網(wǎng)絡(luò)上雖然有相關(guān)的CMS
12、可以下載,但這些CMS在功能上過于繁雜,不適合學(xué)院系級教學(xué)單位使用。為此,我們開發(fā)了一個針對系級教學(xué)單位的內(nèi)容管理系統(tǒng),它提供了后臺管理、信息發(fā)布等功能,通過它,學(xué)生和教師可以快速便捷的獲取到相關(guān)信息。本系統(tǒng)實現(xiàn)了系內(nèi)新聞、精品教案、資源下載、課外導(dǎo)讀、學(xué)生活動、點擊排行、學(xué)生作品、教師隊伍、學(xué)生之星等功能模塊,較適合學(xué)院系級單位的使用。</p><p> 關(guān)鍵詞:因特網(wǎng)、信息發(fā)布、內(nèi)容管理系統(tǒng)</p&g
13、t;<p><b> 1.引言</b></p><p> 隨著計算機技術(shù)和網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,信息技術(shù)的應(yīng)用已經(jīng)滲透到社會的各個領(lǐng)域,利用計算機來解決我們?nèi)粘I钪械母鞣N事務(wù),可以使我們的生活更加方便、快捷[2]?,F(xiàn)在我們也把這一技術(shù)引用到了校園,開發(fā)一個系網(wǎng)站信息發(fā)布平臺,利用它來解決系內(nèi)事務(wù)公布和各種通知并且可以向?qū)W生提供各種學(xué)習(xí)資源,引導(dǎo)學(xué)生更好的的利用網(wǎng)絡(luò)資源,從而
14、大大減少了學(xué)校的開支和各種不必要的麻煩,使學(xué)校的管理信息化,實現(xiàn)系內(nèi)信息的快速傳遞,讓教師和學(xué)生能夠第一時間看到各種消息和通知。</p><p><b> 2.系統(tǒng)簡要說明</b></p><p> 本網(wǎng)站采用Apache+MySQL+PHP這一技術(shù)框架來構(gòu)建, 系統(tǒng)的使用對象分為普通用戶和管理員兩部分:</p><p> 普通用戶的權(quán)限
15、只能瀏覽站內(nèi)的信息、并且大多數(shù)都是本系的教師和學(xué)生。</p><p> 管理員的權(quán)限是可以對后臺各種信息進行錄入、維護和查詢,如添加新聞公告,發(fā)布資源,修改圖文等。本系統(tǒng)采用了比較人性化的界面,操作簡單、直觀、方便。</p><p><b> 3.系統(tǒng)總體設(shè)計</b></p><p><b> 3.1管理員模塊</b>
16、;</p><p> 管理員用戶擁有網(wǎng)站管理的最高權(quán)限,后臺管理的主要功能包括:網(wǎng)站標(biāo)志管理、一級菜單管理、導(dǎo)航菜單管理、系內(nèi)新聞管理、圖片內(nèi)容管理、滾動圖片管理等部分。</p><p> 3.2系統(tǒng)總體結(jié)構(gòu)圖</p><p> 本網(wǎng)站的結(jié)構(gòu)如圖3-1所示:</p><p> 圖3-1 系統(tǒng)總體結(jié)構(gòu)圖</p><
17、p><b> 3.3開發(fā)工具</b></p><p> 本系統(tǒng)采用PHP語言來實現(xiàn)系網(wǎng)站的構(gòu)建,使用這一技術(shù)的優(yōu)點在于:</p><p> PHP具有很好的移植性,可以很容易移植到不同的操作系統(tǒng)平臺上;另外,PHP可以作為Apache服務(wù)器的一個模塊,它與Apache兩者結(jié)合花費代價很低,且有較好的性能價格比[3]。</p><p>
18、; MYSQL是一個小巧的數(shù)據(jù)庫服務(wù)器軟件,執(zhí)行效率高,占用資源少,對于中、小型應(yīng)用系統(tǒng)是非常理想的[3]。它屬于開放源代碼軟件,和PHP結(jié)合是一個經(jīng)濟實惠又高效的方案。</p><p> 本網(wǎng)站采用EclipsePHP Studio 2008和Macromedia Dreamweaver 8作為前臺開發(fā)工具,MYSQL作為后臺數(shù)據(jù)庫的管理系統(tǒng),由于系統(tǒng)中涉及到大量圖文混排的內(nèi)容,所以本系統(tǒng)還使用了一個重要的
19、輔助工具,即網(wǎng)頁在線編輯器,本系統(tǒng)開發(fā)使用的是fckeditor編輯器,使用fckeditor編輯器的好處在于其功能強大且兼容性好。</p><p><b> 4.系統(tǒng)實現(xiàn)過程</b></p><p><b> 4.1數(shù)據(jù)庫設(shè)計</b></p><p> 針對前臺界面和后臺管理的需求,本系統(tǒng)設(shè)計了7個表,分別為adm
20、in, daohang_menu,logo, main_menu,news,rollimages,tuwen分別用于存儲管理員信息、導(dǎo)航菜單、logo標(biāo)志(網(wǎng)站標(biāo)志)、主菜單名稱及其它、新聞管理模塊、滾動圖片模塊、圖文模塊及其它信息,表的詳細結(jié)構(gòu)詳見附錄一。</p><p> 4.2前臺頁面的實現(xiàn)</p><p> 4.2.1網(wǎng)站的標(biāo)志</p><p> 實現(xiàn)
21、讀取網(wǎng)站標(biāo)志的思路是在首頁要顯示網(wǎng)站標(biāo)志的地方用一個img標(biāo)簽:</p><p> <img src="<? include("readlogopath.php"); ?>" height="120" width="775" /></p><p> 將img的路徑設(shè)為讀取出來的
22、路徑,其中readlogopath.php的作用就是將網(wǎng)站標(biāo)志的路徑從logo表中的path字段中讀取出來,這樣就實現(xiàn)了網(wǎng)站標(biāo)志的讀取。</p><p><b> 4.2.2主菜單</b></p><p> 由于在設(shè)計存放主菜單的數(shù)據(jù)表時,用到了一個是否顯示該菜單的字段disable,并指定disable值為1表示是顯示該菜單,而disable值為0表示是隱藏該菜
23、單,所以在查詢時需要附加一個條件為disable=1,為了顯示出來的效果符合界面要求,輸出時限定只取出根據(jù)date降序排序后的8個主菜單,sql語句如下:</p><p> $sql="select * from main_menu where disable=1 order by date limit 8";</p><p> echo "<td&
24、gt;<a href=menudisable.php?id=".$row[id]."></p><p> <font color=$row[menucolor]>$row[menu]</font></a></td>\n";</p><p> 根據(jù)以上查詢語句的結(jié)果將菜單名稱格式化輸出,這樣就實現(xiàn)了
25、主菜單的讀取。</p><p><b> 4.2.3導(dǎo)航菜單</b></p><p> 讀取導(dǎo)航菜單的原理與讀取主菜單的原理基本相同,為了顯示出來的效果符合要求,輸出時限定只取出根據(jù)date降序排序后的5個導(dǎo)航菜單,sql語句如下:</p><p> $sql="select * from daohang_menu order
26、by date desc limit 5";</p><p> 根據(jù)以上查詢語句的結(jié)果將菜單名稱輸出,這樣就實現(xiàn)了主菜單的讀取。當(dāng)然還涉及到數(shù)據(jù)的格式化輸出,如下:</p><p> echo "<tr><td background=images/smenuv2.jpg></p><p> <center>
27、;<a href=daohangdisable.php?id=".$row[id]." >".$row[menu_mingcheng]."</a></p><p> </center></td> </tr>";</p><p> 將背景設(shè)置為images/smenuv2.jpg
28、所指定的圖片,并根據(jù)ID號鏈接到daohangdisable.php頁面,最后將導(dǎo)航菜單的名稱以居中對齊的方式輸出。</p><p><b> 4.2.4新聞模塊</b></p><p> 在數(shù)據(jù)表設(shè)計中,我們將首頁面的系內(nèi)新聞、精品教案、資源下載、課外導(dǎo)讀、學(xué)生活動、網(wǎng)上黨校、點擊排行、學(xué)生作品八個模塊的數(shù)據(jù)存放在一個數(shù)據(jù)表中,并設(shè)置了一個type字段用于區(qū)分它
29、們所屬的模塊,在接下來的數(shù)據(jù)讀取中我們就可以根據(jù)這個type字段來區(qū)分數(shù)據(jù)屬于哪個模塊,這樣八個模塊就可以被區(qū)分開。</p><p> 各個值所代表的模塊如圖4-1所示:</p><p> 圖4-1 各個值所代表的模塊</p><p> 在news這個數(shù)據(jù)表中我們還用到了一個是否顯示該新聞的字段fabu,并指定fabu值為1表示發(fā)布該新聞,而fabu值為0表
30、示隱藏該新聞,所以在查詢時需要附加一個fabu=1的條件,在讀取新聞模塊時就可以使用下面的SQL語句來實現(xiàn):</p><p> $sql="select * from news where type=0 and fabu=1 order by date desc limit 6";</p><p> 上面的type=0即指定了讀取新聞模塊,同時用limit子句限定只
31、讀取最新的6條記錄。同理,其它的模塊如精品教案、資源下載、課外導(dǎo)讀、學(xué)生活動、網(wǎng)上黨校、點擊排行、學(xué)生作品模塊就可以用不同的type值來實現(xiàn)各個模塊的讀取。</p><p><b> 4.2.5圖文模塊</b></p><p> 圖文模塊又分為教師隊伍和學(xué)生之星兩個模塊,同樣使用了type字段來區(qū)分這兩個模塊,并指定type=0表示教師隊伍模塊,type=1表示學(xué)
32、生之星模塊。另外tuwen數(shù)據(jù)表中還有一個字段disable用于標(biāo)識是否顯示該圖文。因此在查詢數(shù)據(jù)時還需要加入一個disable=1的條件,具體實現(xiàn)查詢的SQL語句如下:</p><p> $sql="select * from tuwen where type=0 and disable=1 order by date desc limit 2";</p><p>
33、 上述語句中type=0表示讀取教師隊伍這個模塊,為了界面能較好的適應(yīng)靜態(tài)網(wǎng)頁的框架,本處只讀取最新加入的2條數(shù)據(jù)。學(xué)生之星模塊的數(shù)據(jù)讀取與上述語句基本相同,只需把type=0改為type=1即可。</p><p> 4.2.6搜索功能的實現(xiàn)</p><p> 前臺搜索表單的定義:</p><p> <form action="searchd
34、isable.php" method="post"></p><p> <TD align=right width=25><IMG height=12 src="images/io.gif" width=12></TD></p><p> <TD class=fontw align=mid
35、dle width=70>站內(nèi)搜索</TD></p><p> <TD width=80><INPUT class=input size=62 name=key></TD></p><p> <TD><INPUT type=image src="images/search3.gif" borde
36、r=0 name=imageField></TD></p><p><b> </FORM></b></p><p> 在上述定義的表單中,接收關(guān)鍵字的表單名稱為key,因此后臺實現(xiàn)搜索功能的頁面首先應(yīng)該獲取這個搜索關(guān)鍵字,然后使用SQL語句中的like語句來匹配,語句如下:</p><p> $sql=&q
37、uot;select * from news where title like '%$key%'";</p><p> 另外是將搜索結(jié)果中的關(guān)鍵字高亮顯示,此處使用了preg_replace()函數(shù)將搜索結(jié)果中的關(guān)鍵字高亮顯示,具體代碼如下:</p><p> $key=$_POST[key];</p><p> $row1[titl
38、e]=preg_replace("/($key)/i","<font color=red><b>\\1</b></font>",$row[title]);</p><p> 上述語句實現(xiàn)將搜索結(jié)果標(biāo)題中的關(guān)鍵字顯示為紅色粗體。</p><p> 4.2.7滾動圖片的讀取</p><
39、;p> 滾動圖片的讀取其基本思想是將數(shù)據(jù)庫中圖片的路徑、說明信息、寬度和高度分別賦值給img標(biāo)簽的src、alt、width、height屬性,讀取的多張圖片放在一行的多個列中,最后用JavaScript腳本控制圖片的滾動效果,具體的JavaScript腳本此處不在贅述。以下代碼在SQL語句查詢的基礎(chǔ)上將圖片格式化輸出:</p><p> echo "<td><a href=
40、\"\"#\"\" target=\"\"_blank\"\"></p><p> <img src=\"$row[path]\" width=\"$row[width]\" height=\"$row[height]\"</p><p>
41、; class=\"b5\" hspace=\"0\" alt=\"$row[shuoming]\"></a></td>\n";</p><p><b> 以上語句為一行語句</b></p><p> 4.3后臺管理的實現(xiàn)</p><p>
42、 系統(tǒng)功能模塊的實現(xiàn)主要分為:登陸模塊、管理員模塊。下面,就這兩個模塊分別進行詳細解釋,具體代碼見系統(tǒng)源程序。</p><p><b> 4.3.1登陸模塊</b></p><p> 登陸模塊流程圖如圖4-2所示:</p><p> 圖4-2 登陸模塊流程圖</p><p> 4.3.2管理員模塊</p
43、><p> 管理員用戶擁有網(wǎng)站管理的最高權(quán)限,后臺管理的主要功能包括:網(wǎng)站標(biāo)志管理、一級菜單管理、導(dǎo)航菜單管理、系內(nèi)新聞管理、圖片內(nèi)容管理、滾動圖片管理等部分。</p><p> 系統(tǒng)管理流程圖如圖4-3所示:</p><p> 圖4-3 系統(tǒng)管理流程圖</p><p> 4.3.3修改網(wǎng)站標(biāo)志</p><p>
44、 此部分首先將原有的網(wǎng)站標(biāo)志讀取出來,然后在網(wǎng)站標(biāo)志下面給出重新上傳網(wǎng)站標(biāo)志的表單,此頁面為前后臺合并,即沒有POST變量時執(zhí)行前臺,而有POST變量時執(zhí)行后臺的圖片上傳操作。在將上傳的圖片存放到指定位置的同時,并將圖片存放的路徑寫入數(shù)據(jù)庫,執(zhí)行上傳操作的函數(shù)為:</p><p> move_uploaded_file(string filename, string destination)</p>
45、;<p> move_uploaded_file()函數(shù)檢查并確保由 filename 指定的文件是合法的上傳文件(即通過 PHP 的 HTTP POST 上傳機制所上傳的文件)。如果文件合法,則將其移動到由 destination 指定的路徑。</p><p> 此頁面還有一個圖片上傳前的預(yù)覽功能,思路是使用JavaScript腳本獲取當(dāng)前上傳文件的路徑,然后將其縮略圖顯示出來,具體代碼如下:
46、</p><p> <script language="javascript"></p><p> function getFullPath(obj){</p><p><b> if(obj) {</b></p><p> if (window.navigator.userAge
47、nt.indexOf("MSIE")>=1) {</p><p> obj.select();</p><p> return document.selection.createRange().text;</p><p><b> }</b></p><p> else if(windo
48、w.navigator.userAgent.indexOf("Firefox")>=1){</p><p> if(obj.files) {</p><p> return obj.files.item(0).getAsDataURL();</p><p><b> }</b></p><p&
49、gt; return obj.value;</p><p><b> }</b></p><p> return obj.value;</p><p><b> }</b></p><p><b> }</b></p><p> functi
50、on yulan(){</p><p> var filePath =getFullPath(document.getElementById('UpFile'));</p><p> var fileText =filePath.substring(filePath.lastIndexOf("."),filePath.length);</p&g
51、t;<p> var fileName =fileText.toLowerCase();</p><p> if ((fileName!='.jpg')&&(fileName!='.gif')&&(fileName!='.jpeg')&&(fileName!='.png')&&
52、amp;(fileName!='.bmp')){</p><p> alert("對不起,系統(tǒng)僅支持標(biāo)準(zhǔn)格式的圖片,請您調(diào)整格式后重新上傳,謝謝 !");</p><p> document.form1.UpFile.focus();</p><p><b> }</b></p><
53、p><b> else{</b></p><p> document.getElementById("preview").innerHTML="</p><p> <img src='"+getFullPath(document.getElementById('UpFile'))+&qu
54、ot;' style='border:6px double #ccc'>";</p><p><b> }</b></p><p><b> }</b></p><p><b> </script></b></p><p
55、> 4.3.4一級菜單管理</p><p> (1)、添加一級菜單</p><p> 本部分用到接收菜單名稱、菜單顏色、是否顯示該菜單和內(nèi)容部分等幾個表單,其中菜單顏色是通過調(diào)用windows自帶的調(diào)色板并使用object對象來實現(xiàn),由于本模塊可能會涉及到大量的圖文混排,所以可以使用在線編輯器的方法來實現(xiàn)圖文混排,具體使用的是fckeditor編輯器。</p>&
56、lt;p> A、調(diào)用windows自帶的調(diào)色板的代碼如下</p><p> <OBJECT CLASSID="clsid:3050f819-98b5-11cf-bb82-00aa00bdce0b" width="0px" height="0px"></p><p><b> </OBJECT
57、></b></p><p> <script language="javascript"></p><p> var tempColor = "000000";</p><p> function returnColor()</p><p><b> {&
58、lt;/b></p><p> var Hcolor = dlgHelper.ChooseColorDlg(tempColor).toString(16);</p><p> with(event.srcElement)</p><p><b> {</b></p><p> value = ((Hcolo
59、r.length<6)?"000000".substring(0,6-Hcolor.length):"") + Hcolor; </p><p> style.backgroundColor = ((Hcolor.length<6)?"000000".substring(0,6-Hcolor.length):"")
60、 + Hcolor; </p><p><b> } </b></p><p> tempColor = Hcolor</p><p><b> }</b></p><p><b> </script></b></p><p&
61、gt; B、fckeditor配置詳細代碼</p><p><b> <?php</b></p><p> include("../../FCKeditor/fckeditor.php");</p><p> include("../tiaoseban.php");</p>&
62、lt;p> $sBasePath = $_SERVER['PHP_SELF'] ;</p><p> $sBasePath = substr( $sBasePath, 0, strpos( $sBasePath, "admin/" ) ) ;</p><p> $sBasePath = $sBasePath."fckeditor/&
63、quot;;</p><p> $oFCKeditor = new FCKeditor('body') ;</p><p> $oFCKeditor->BasePath= $sBasePath ;</p><p> $oFCKeditor->Width = '100%' ;</p><p>
64、 $oFCKeditor->Height = '450' ;</p><p> $oFCKeditor->Value= '' ;</p><p> $oFCKeditor->Create() ;</p><p><b> ?></b></p><p>
65、?。?)、修改一級菜單</p><p> 修改原有菜單及其內(nèi)容時,首先要將原有的值讀取出來,然后顯示在表單中,可在SQL查詢后,將返回數(shù)組后的某個字段信息顯示出來。</p><p> 如讀取原有菜單的名稱:</p><p> <td height="30"><span class="STYLE2">
66、;請輸入菜單名稱:</span></p><p> <input type="text" name="menu" value=<? echo $row[menu] ?>/></p><p> 再如讀取下拉列表的原有值:</p><p> <select name="di
67、sable"></p><p> <option value="0" <? if( $row[fabu]==0) echo " selected=1 ";?>>隱藏</option></p><p> <option value="1" <? if( $row[f
68、abu]==1) echo " selected=1 ";?>>顯示</option></p><p><b> </select></b></p><p> 即如果fabu的原有值為0,則將隱藏這個值選中; 如果fabu的原有值為1,則將顯示這個值選中。</p><p> 另外一個
69、問題是fckeditor原有值的讀取,在調(diào)試過程中,要將原有值讀取到fckeditor編輯器作為初始值時,讀取出來的值變成了HTML 代碼,這時可以使用html_entity_decode()這個函數(shù)來轉(zhuǎn)換后原有內(nèi)容就能夠正常顯示。</p><p> 4.3.5導(dǎo)航菜單、圖片內(nèi)容和系內(nèi)新聞管理</p><p> 這幾部分的實現(xiàn)原理基本和一級菜單管理相同,都用到了用于接收各字段信息的表單
70、,另外,調(diào)色板的調(diào)用和fckeditor的配置基本相同,此處不再贅述。只是在引用fckeditor時,應(yīng)使用當(dāng)前文件與fckeditor的相對路徑。對于涉及到有圖片上傳部分的管理時,應(yīng)在表單加入enctype="multipart/form-data"的語句,該語句可以支持文件上傳操作。</p><p><b> 5.系統(tǒng)效果圖</b></p><p
71、> 5.1前臺頁面效果圖</p><p> 前臺頁面效果圖如圖5-1和5-2所示:</p><p> 圖5-1 前臺運行效果圖1</p><p> 圖5-2 前臺運行效果圖2</p><p> 5.2后臺頁面效果圖</p><p> 后臺部分頁面效果圖如圖5-3所示:</p><
72、;p> 圖5-3 后臺部分頁面效果圖</p><p> 6.編程過程中的幾個細節(jié)問題</p><p> 6.1 標(biāo)題過長時的處理</p><p> 實現(xiàn)標(biāo)題過長時用省略號代替,此處思路是首先定義一個樣式,如下代碼:</p><p> li {width:156px; line-height:25px; text-overfl
73、ow:ellipsis;</p><p> white-space:nowrap; overflow:hidden;}</p><p> 定義一個無序列表,在輸出時就會得到如圖6-1所示的效果。標(biāo)題過長時用省略號代替的效果首先定義如上代碼所示的寬度width:156px; 然后將超出的部分隱藏。即:overflow:hidden</p><p> 圖6-1
74、標(biāo)題過長時用省略號代替的效果圖</p><p> 在格式化輸出時用title屬性輸出完整標(biāo)題(即鼠標(biāo)移上去時就顯示完整的標(biāo)題)</p><p><b> 如下代碼所示:</b></p><p> echo"<td><li><a href= newsdisable.php?id=".$row
75、[id]." Title= $row[title] $row[date]></p><p> <font color=$row[titlecolor]>$row[title]</font></a></li></td>\n";</p><p><b>
76、; 6.2 編碼問題</b></p><p> MySQL從4.1版本開始,支持多種編碼,包括我們熟知的 latin1、gbk、utf8、big5等,還有一些我們聞所未聞的編碼方式。</p><p> 不管使用什么數(shù)據(jù)庫版本,不管是3.x,還是4.0.x還是4.1.x,其實對我們來說不太重要,我們只需注意兩點即可:</p><p> (1)、正確
77、的設(shè)定數(shù)據(jù)庫編碼,MySQL4.0以下版本的字符集總是默認ISO8859-1,MySQL4.1在安裝的時候會讓我們選擇。如果我們準(zhǔn)備使用UTF- 8,那么在創(chuàng)建數(shù)據(jù)庫的時候就要指定好UTF-8</p><p> (2)、使用3.0.16以上版本的JDBC Driver,那么我們就不需要再寫characterEncoding=</p><p> UTF-8這樣的語句。如果數(shù)據(jù)庫服務(wù)器使用
78、的是utf-8,那么,jdbc就會把數(shù)據(jù)庫的內(nèi)容用utf-8格式傳到JVM中。如果數(shù)據(jù)庫服務(wù)器中的某個數(shù)據(jù)庫使用的編碼是gbk,那么就會發(fā)生編碼不一致的錯誤。這時,我們可以使用characterEncoding=GBK強制使用gbk編碼傳遞到JVM中?;蛘?,我們也可以把整個MySQL數(shù)據(jù)庫服務(wù)器的編碼轉(zhuǎn)變?yōu)間bk。</p><p> 在MySQL中,默認使用的是latin1,也就是ISO8859-1字符集編碼。
79、這是一種8位的編碼,適用于所有西歐字符。而對于漢字等是不合適的。最好、最通用的編碼格式是utf-8,這是一種8位的Unicode字符集。它對于8位的西歐字符集來說,比較節(jié)省空間,而又能夠有效地表示漢字等字符。</p><p> 因此,將MySQL數(shù)據(jù)庫服務(wù)器設(shè)置為utf-8格式,把所有的MySQL數(shù)據(jù)庫也設(shè)置為utf-8格式,這是最佳的選擇。但是,一些常用的MySQL工具無法顯示utf-8格式的中文。如MySQ
80、L自帶的工具,MySQL-Front等軟件。但是,MyManger和命令行下的MySQL是可以正常顯示utf-8格式的中文的。</p><p> 如果,我們選擇使用gbk,那么就應(yīng)該把數(shù)據(jù)庫服務(wù)器和數(shù)據(jù)庫的編碼格式全部轉(zhuǎn)為使用gbk,否則可能會出現(xiàn)問題。</p><p> 為了解決亂碼問題,我們可以在數(shù)據(jù)訪問時加入一個語句:mysql_query("set names gb2
81、312"); gb2312表示指定訪問數(shù)據(jù)庫時所使用的字符集,當(dāng)然也可以使用其它的字符集。</p><p> 6.3 ID值的多次傳遞</p><p> 我們都知道在id值傳遞的過程中,我們一般都以GET的方式來傳遞和獲取,但id值在多次傳遞過程中,如果中間某次傳遞時我們不將其獲取的話,那么在下一次再使用到id值時就可能無法獲取。在實現(xiàn)后臺管理時,遇到的一個問題之一就是id值
82、的多次傳遞,當(dāng)要對數(shù)據(jù)庫中的數(shù)據(jù)進行修改操作時,首先我們要將相應(yīng)的數(shù)據(jù)讀取出來,同時將id值也讀取出來以使其它頁面能夠獲取該頁傳遞的id值,當(dāng)我們點擊某個鏈接跳轉(zhuǎn)到相應(yīng)頁面后,那么這個頁面首先應(yīng)獲取傳過去的id值,再根據(jù)這個id值進行查詢、更新、刪除等操作。在實現(xiàn)某個模塊的修改時,我們首先將數(shù)據(jù)庫中的原有值一一列出來,每一條記錄都對應(yīng)著一個id值,進入具體的修改頁面后,我們根據(jù)傳過來的id號將原有值都查詢出來后顯示到表單中,當(dāng)修改好要進
83、行更新操作時我們發(fā)現(xiàn),值無法更新,究其原因,就是更新操作時id值沒有傳遞到操作更新的頁面,為此,我們在顯示具體要修改的頁面時,可以將id值放在一個隱藏域的表單中,更新的頁面就可以用POST方式獲取這個隱藏域的值,這樣既避免了用戶修改id值,又實現(xiàn)了id值的多次傳遞。</p><p><b> 7.總結(jié)與收獲</b></p><p> 經(jīng)過將近半年的努力,基于PHP
84、的網(wǎng)站系統(tǒng)已經(jīng)完成,實現(xiàn)了前臺頁面的正常顯示和搜索功能以及后臺的網(wǎng)站標(biāo)志管理、一級菜單管理、導(dǎo)航菜單管理、系內(nèi)新聞管理、圖片內(nèi)容管理、滾動圖片管理等功能。</p><p> 雖然我對PHP語言有過近一年的學(xué)習(xí),對其也有了一定的掌握,但所學(xué)內(nèi)容并不全面,只用以前的所學(xué)知識對開發(fā)一個系統(tǒng)是遠遠不夠的,因此只能在系統(tǒng)的開發(fā)過程中摸索學(xué)習(xí),達到最終要求,這樣在開發(fā)過程中也有了不少的收獲。在此我總結(jié)了以下幾點經(jīng)驗:<
85、;/p><p> 表達式的使用,javascript和PHP中的正則表達式功能都是一樣的只是語法稍有不同,要學(xué)會靈活運用這兩種方法,但要注意的是在javascript不要穿插PHP語句,這樣編譯的時候可能會出錯。</p><p> 本網(wǎng)站基本能適應(yīng)網(wǎng)站系統(tǒng)的初步需求,但是其中也有不足之處,主要表現(xiàn)在以下方面:</p><p> A、代碼重復(fù)率高,由于本網(wǎng)站基本都采
86、用面向過程的開發(fā)模式,致使代碼重復(fù)率高,這是源代碼最大的不足點。</p><p> B、系統(tǒng)的安全性不夠高及嚴(yán)謹性不夠嚴(yán)密。</p><p> C、前臺頁面的搜索功能只實現(xiàn)了單關(guān)鍵字的搜索,如果能加入多關(guān)鍵字的支持將會更好。</p><p> D、目前暫時還沒有實現(xiàn)主菜單下的二級菜單,如果能加入二級菜單則網(wǎng)站將更適用。</p><p>
87、<b> 8.致謝</b></p><p> 首先,在本設(shè)計完成之際,我要衷心感謝我的指導(dǎo)老師xxx,是他的悉心指引,我才能順利的完成系網(wǎng)站的設(shè)計與開發(fā)。在此對xxx老師致以我最衷心的感謝和最崇高的敬意!</p><p> 四年的時間對于整個人生而言,也許是短暫而微不足道的。但即將過去的這個四年對我而言,卻是人生中一個重要的里程碑,深刻而難忘。而在成長的過程中,
88、眾多的良師益友給予我生活上的關(guān)懷和照顧,學(xué)習(xí)上的指導(dǎo)和幫助以及思想上的鞭策和鼓勵,使我終身難忘。</p><p> 四年的學(xué)習(xí)生活即將結(jié)束,我將要離開培養(yǎng)我成才的學(xué)校,去尋找屬于自己的天空,眾位老師的關(guān)懷和培育,使我從一個懵懂的高中生變成了今天羽翼漸豐的自我。我將自豪的走向社會.這與眾多的老師的培養(yǎng)和同學(xué)的幫助是密不可分的,我感謝幫助和關(guān)心過我的老師和同學(xué),我感激你們,更感謝你們!</p><
89、;p><b> 參考資料</b></p><p> [1] 齊克科、唐振云、王春森.利用PHP實現(xiàn)網(wǎng)上數(shù)據(jù)操作[J].計算機教育應(yīng)用,2001</p><p> [2] Hugb E.Williams & David Lane. PHP&MySQL Web數(shù)據(jù)庫應(yīng)用開發(fā)指南[M].中國電力出版社,2003</p><
90、p> [3] 姜曉銘、張亮.PHP程序設(shè)計與實例分析教程[M].北京:清華大學(xué)出版社,2005</p><p> [4] 張 梟.PHP+MySQL+Dreamweaver網(wǎng)站建設(shè)典型案例[M].北京:清華大學(xué)出版社,2006</p><p> [5] 劉亞濤.網(wǎng)站開發(fā)中使用PHP+MySQL技術(shù)[J].應(yīng)用技術(shù),2006</p><p> [6]
91、 [澳] Luke Welling ,Laura Thomson.PHP和MYSQL Web 開發(fā)[M].機械工業(yè)出版社,2006.5</p><p> [7] 劉亞濤.網(wǎng)站開發(fā)中使用PHP+MySQL技術(shù)[J].應(yīng)用技術(shù),2006</p><p> [8] (澳)Saied Tahaghoghi, 學(xué)習(xí)MySQL:英文 影印本,東南大學(xué)出版社, 2007.06.01 &
92、lt;/p><p> [9] 陳營輝.PHP網(wǎng)絡(luò)編程從入門到精通[M].清華大學(xué)出版社,2007.7</p><p> [10] PHP5與MySQL5Web開發(fā)技術(shù)詳解/杜江編著.—北京:電子工業(yè)出版社,2007.11</p><p> [11] 趙鶴芹.設(shè)計動態(tài)網(wǎng)頁的最佳方案:Apache+PHP+MySQL[J].計算機過程與設(shè)計,2007</p
93、><p> [12] JavaScript全程指南/郭偉偉,劉端陽編著.—北京:電子工業(yè)出版社,2008.3</p><p> [13] 陳 軍.PHP+MYSQL經(jīng)典案例剖析[M].清華大學(xué)出版社,2008.1</p><p> [14] 劉定林、孫海剛.Dreamweaver+Flash+Photoshop網(wǎng)頁制作 [M].</p><
94、;p> A CMS For Institute Base on Web</p><p><b> Wei Kai</b></p><p> Department of educational technology, Yuxi Normal University Yuxi 653100</p><p> Supervisor: Sh
95、i Jun-Yi</p><p> 【Abstract】Information can be released and upgraded rapidly through Web. A CMS for institute base on web has been developed. It supports user management、resource downloading etc, user can ge
96、t the news and notice through it. The system is composed by a series of model: institute news、teaching plan、resource downloading、students and teacher info, student’s works etc.</p><p> 【Keywords】Network Pr
97、ogramming, Information, Department Website</p><p> 附錄Ⅰ 數(shù)據(jù)表詳細說明</p><p> 表4-1導(dǎo)航菜單表 daohang_menu</p><p> 表4-2網(wǎng)站標(biāo)志圖片管理logo </p><p> 表4-3管理員信息表admin</p><p>
98、 表4-4主菜單管理表main_menu</p><p> 表4-5新聞管理模塊(重要)news</p><p> 表4-6滾動圖片管理 rollimages</p><p> 表4-7圖文管理tuwen</p><p> 附錄Ⅱ 系統(tǒng)文件說明</p><p><b> 1.配置文件</b
99、></p><p><b> 2.前臺主要文件</b></p><p><b> 3.主要文件夾說明</b></p><p><b> 4.管理員功能模塊</b></p><p> 5.delete文件夾</p><p> 6.inser
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于php技術(shù)的個人網(wǎng)站畢業(yè)設(shè)計
- php畢業(yè)設(shè)計--基于php的個人博客系統(tǒng)的實現(xiàn)
- 個人網(wǎng)站的建設(shè)及實現(xiàn)畢業(yè)設(shè)計(論文)
- 基于php技術(shù)的網(wǎng)站建設(shè)畢業(yè)論文
- php網(wǎng)站后臺操作手冊
- 基于php的團購網(wǎng)站的設(shè)計與實現(xiàn)【畢業(yè)論文】
- php網(wǎng)站后臺操作手冊
- php+mysql網(wǎng)上書店畢業(yè)設(shè)計--舊書網(wǎng)站的設(shè)計與實現(xiàn)
- php信電系網(wǎng)站建設(shè)設(shè)計(源代碼+論文)
- 基于php的手機商城網(wǎng)站的設(shè)計與實現(xiàn)——畢業(yè)論文
- php企業(yè)網(wǎng)站畢業(yè)設(shè)計開題報告
- 基于php的招生咨詢網(wǎng)站的設(shè)計與實現(xiàn)畢業(yè)論文
- 基于php個人博客的設(shè)計與實現(xiàn)畢業(yè)設(shè)計答辯
- 基于php技術(shù)的小型企業(yè)網(wǎng)站開發(fā)畢業(yè)設(shè)計
- 基于PHP的商務(wù)網(wǎng)站設(shè)計與實現(xiàn).pdf
- 基于php的機房管理系統(tǒng)的實現(xiàn)--畢業(yè)設(shè)計
- 畢業(yè)設(shè)計基于php的新聞管理系統(tǒng)的設(shè)計與實現(xiàn)
- 基于PHP的教學(xué)網(wǎng)站設(shè)計與實現(xiàn).pdf
- php畢業(yè)論文--教學(xué)網(wǎng)站的設(shè)計與實現(xiàn)
- 個人網(wǎng)站設(shè)計及實現(xiàn)畢業(yè)設(shè)計
評論
0/150
提交評論