王亞鴿
(陜西凌云電器有限公司網絡信息處,陜西寶雞 721006)
技術交流平臺軟件,主要用于滿足設計師學習交流與資料分享的需要,實現資料數據共享與信息化、資料檢索與瀏覽、資料上傳與下載、管理信息的發布,從而提高工作效率和設計水平。
php是一種在服務器端執行的嵌入Html文檔的腳本語言,它具有高性能、低成本和跨平臺性強等優點;MySQL是一個小型關系型數據庫管理系統,其性能可靠、可移植性強、開放源碼、易于配置;Apache是目前應用最廣的服務器,可以在多個操作系統中使用。而Apache+php+MySQL組合所具有的一個優良特性就是他們可以在主流操作系統中使用。本平臺所運行的操作系統為Windows Server 2003[1]。
這3個軟件使用的版本不同,安裝和配置亦不同。本文所采用的版本為:(1)apache_2.0.55-win32-x86-no_ssl.msi。(2)php-5.0.5-Win32.zip。(3)mysql-4.1.14-win32.zip。
運行“apache_2.0.55-win32-x86-no_ssl.msi”,根據安裝界面提示,進行安裝。安裝完成后,測試按默認配置運行的界面,如果可以看到提示安裝成功界面,表示Apache服務器已安裝成功。安裝成功后,就可以配置Apache服務器。步驟如下:開始→所有程序→Apache HTTP Server 2.0.55→Configure Apache Server→Edit the Apache httpd conf Configuration file,點擊“打開”。對其中的文件修改如下:(1)DocumentRoot“”內的地址改成所用網站根目錄。(2)DirectoryIndex處添加網站首頁需要顯示的文件名。(3)“#DefaultLanguage nl”前面的“#”去掉,把“nl”改成所需強制輸出的語言,中文是“zh-cn”,保存,關閉。(4)重起 Apache,所有的配置生效[2]。
將下載的php安裝文件php-5.0.5-Win32.zip解壓縮到指定位置。查看解壓縮后的文件夾內容,找到“php.ini-dist”文件,將其重命名為“php.ini”,并對其進行如下編輯:(1)把“;extension=php_mysql.dll”前的“;”去掉。(2)打開Apache的配置文件,在Ln 173,加入“LoadModule php5_module D:/php/php5apache2.dll”,第二行“PHPIniDir“D:/php””是指明 php的配置文件 php.ini的位置。(3)打開Apache的配置文件,在Ln757,加入“AddType application/x-httpd -php.php”、“AddType application/x-httpd-php.html”,實質就是添加可以執行php的文件類型。php的安裝,與Apache的結合已經全部完成,重新啟動 Apache,Apache服務器即可支持 php[3]。
打開MySQL安裝文件MySQL-4.1.14-win32.zip,解壓縮后,運行“setup.exe”。MySQL安裝向導啟動,根據提示進行安裝,在軟件安裝完成界面上,將“Configure the Mysql Server now”選中,就啟動了MySQL配置向導,根據安裝向導的提示,進行相關設置。
由于此平臺建立在企業的內網平臺,從系統集成性及使用簡便的角度出發,系統采用瀏覽器/服務器(B/S)結構,不需要另外安裝客戶端[4]。
經過需求分析,系統應實現以下功能:
(1)用戶管理及權限分配:該項目僅限內部使用,必須嚴格身份認證,劃分權限。系統分為管理員、頻道管理員和會員,所有用戶均采用實名制。管理員可增加、刪除會員以及給會員分配相應權限;頻道管理員可以在所管頻道發布、回復和刪除信息;會員只能在特定的頻道發布、回復。
(2)更改密碼:用戶在登錄界面下可更改密碼。在修改密碼時應先輸入舊密碼,然后再輸入新密碼并確認,舊密碼錯誤或兩次輸入的新密碼不一致時,系統均會給予出錯信息提示。
(3)信息發布、瀏覽、回復:各室主任可在所管頻道進行信息的發布、回復、刪除;會員可瀏覽所有信息,但只能在特定的子頻道發布、回復。回復和發布信息時使用在線編輯器,用戶可上傳 rar、zip、doc、pdf、xls格式且大小不超過200 MB的附件。用戶還可對該主題進行回復,也可采用“引用”對某信息的回復進行回復。
(4)新發信息在7天之內顯示“NEW”標志,有附件的則以附件標識圖片顯示,信息按時間順序排列,每個主題顯示標題、樓主/發表時間、回復數/點擊數和最后回復人/發表時間。
(5)記錄查詢功能:用戶可在登錄界面中查詢到自己所發送和回復信息的所有記錄。
(6)資料共享上傳、下載:用戶可自由下載、上傳附件。
(7)數據查詢統計:可按標題、日期、室組進行查詢統計。
系統需要使用數據庫表涉及5個,分別為:
(1)頻道表(Channel):存放系統的頻道信息。
(2)子頻道表(ChannelSon):存放系統子頻道信息及與頻道的對應關系。
(3)內容表(Uaying):存放發布的內容信息。
(4)用戶表(User):存放用戶相關信息。
(5)用戶類型表(Usertype):存放用戶類型信息。
(1)用戶管理及權限分配。
系統分為管理員、各室主任和會員,所有用戶均采用實名制。由于系統的一些子頻道要求所發信息必須具有權威性,只能由該頻道管理員進行發布、刪除和回復,其余人員只能瀏覽。設計思想為:將頻道表中的頻道ID字段和用戶類型表(usertype)用戶類型ID字段關聯起來;在子頻道中設置一個字段(show),將不需要特殊權限就能發布、回復信息的子頻道show字段設置為“1”,其余子頻道show字段設置為“0”;在程序設計時,根據用戶的不同類型選擇信息的不同顯示方式。
(2)發布和回復信息。
由于設計師需要發布一些壓縮文件包,或進行圖文編輯。在此,選擇 Fckeditor來滿足這些需求。Fckeditor是文字編輯器,它可以和php、asp、java等不同的編程語言相結合。將Fckeditor軟件解壓縮到網站目錄下,刪除不必要的文件夾,根據實際情況對fckeditor、fckconfig兩個文件中相關參數進行修改,然后調用。
(3)數據查詢統計。
為提高使用者的積極性,單位要求年底對各頻道的信息發布數量進行統計和考核。此系統可按標題、時間段和頻道進行分別查詢統計,也可進行字段隨意組合查詢統計。
平臺將php、MySQL、Apache在Windows下正確安裝與配置后,運作良好,顯示其良好的兼容性。目前,該平臺已實際應用,其界面友好,簡單實用,操作方便,達到了預期效果。
[1] Luke Welling Laura Thomson.PHP和 MySQL Web開發[M].聶頌,譯.3版.北京:機械工業出版社,2005.
[2] 唐漢明,翟振興,蘭麗華.深入淺出MySQL數據庫開發、優化與管理維護[M].北京:人民郵電出版社,2008.
[3] 呂何新,陳偉,沈淦.FrontPage 2003網頁設計與制作[M].北京:高等教育出版社,2005.
[4] 飛思科技產品研發中心.PHP&MySQL網站設計與實現[M].北京:電子工業出版社,2001.