国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

使用PHP和MySQL開發(fā)動態(tài)網(wǎng)站

2011-08-15 00:49賈素來
大眾科技 2011年3期
關(guān)鍵詞:服務(wù)器動態(tài)數(shù)據(jù)庫

賈素來

(無錫商業(yè)職業(yè)技術(shù)學(xué)院,江蘇 無錫 214153)

使用PHP和MySQL開發(fā)動態(tài)網(wǎng)站

賈素來

(無錫商業(yè)職業(yè)技術(shù)學(xué)院,江蘇 無錫 214153)

PHP技術(shù)和MySQL數(shù)據(jù)庫是開發(fā)動態(tài)網(wǎng)站的最佳組合。文章介紹了PHP和MySQL的基本知識和優(yōu)點,介紹了使用PHP和MySQL開發(fā)動態(tài)網(wǎng)站的過程和關(guān)鍵技術(shù)。

PHP; MySQL;動態(tài)網(wǎng)站

隨著Internet/Intranet技術(shù)的發(fā)展及其在企事業(yè)單位中的廣泛運用,網(wǎng)站作為信息資源發(fā)布和共享的平臺,在企事業(yè)單位的日常事務(wù)中起著越來越重要的作用。相比較于其它動態(tài)網(wǎng)站開發(fā)技術(shù),PHP(Professional Hypertext Preprocessor)技術(shù)和 MySQL數(shù)據(jù)庫有著不少的優(yōu)點,是開發(fā)動態(tài)網(wǎng)站的最佳組合。

(一)PHP和MySQL簡介

1.PHP簡介

PHP與微軟的 ASP(Active Server Pages)頗有幾分相似,都是一種在服務(wù)器端執(zhí)行的,嵌入HTML文檔的腳本語言,語言的風(fēng)格類似于 C語言,現(xiàn)在被很多的網(wǎng)站編程人員廣泛的運用。PHP腳本在WEB服務(wù)器端的運行方式是,當(dāng)WEB服務(wù)器收到一個WEB頁面請求時,若請求的是HTML文件,則WEB服務(wù)器直接把文件提供給瀏覽器顯示;若請求的是以“.php”為擴展名的文件,則WEB服務(wù)器先傳給PHP執(zhí)行引擎,對兩個PHP分界符號之間的PHP程序進行分析,然后再根據(jù)程序運行時各種不同的條件將PHP程序轉(zhuǎn)換為相應(yīng)的HTML代碼返回給客戶端的瀏覽器顯示。PHP獨特的語法混合了C、Java、Perl 以及PHP自創(chuàng)新的語法,可以比CGI或者Perl更快速的執(zhí)行動態(tài)網(wǎng)頁。

PHP、ASP和JSP都是目前Internet/Intranet上流行的動態(tài)網(wǎng)站開發(fā)技術(shù)。與ASP、JSP相比,使用PHP開發(fā)動態(tài)網(wǎng)站具有如下一些優(yōu)勢。

(1)PHP同JSP(Java Server Pages)類似,幾乎可以運行于所有的平臺?!癢rite Once,Run Anywhere”準確地描述了這一特性。雖然,現(xiàn)在 WINDOWS系列操作系統(tǒng)占了很大的市場份額,但是在服務(wù)器方面Unix的優(yōu)勢仍然很明顯,而新崛起的 Linux更是來勢不小。ASP在這一方面的逆勢明顯可見。

(2)PHP具有十分強大的數(shù)據(jù)庫操作功能,可直接連接多種數(shù)據(jù)庫,并完全支持 ODBC(Open Database Connectivity)。PHP含有相當(dāng)豐富的函數(shù)庫,只需借助某一個或某幾個函數(shù)即可完成上載文件、存取數(shù)據(jù)庫中的二進制圖片數(shù)據(jù)、作圖、XML解析等功能。

(3)PHP具有先進的擴展功能。PHP不但內(nèi)置了對文件上傳、密碼認證、郵件收發(fā)、動態(tài) GIF生成等功能的支持,還極有遠見的提供了對GZIP文件、PDF、XML的直接支持,同時用戶還可以編寫自己的擴展模塊或從網(wǎng)上下載別人編寫的其它模塊、基庫,給將來的擴展提供了極大的空間。

(4)PHP是面向?qū)ο蟮?,并且吸收了C/C++/Java/PERL的精華。PHP是用C寫成的,語法簡單,書寫容易。

另外,1995年,PHP2.0發(fā)布時被定名為 PHP/FI(Form Interpreter),加入了對MySQL的支持。這就使PHP在訪問MySQL時不需安裝額外的驅(qū)動程序,使用起來方便,訪問速度也比較快。

2.MySQL簡介

MySQL是一個健壯、快速和易用,且支持多線程、多用戶的數(shù)據(jù)庫服務(wù)器。與其他的大型數(shù)據(jù)庫,例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之處,如規(guī)模小、功能有限等,但是MySQL是免費的,并且具有許多同大型數(shù)據(jù)庫相媲美甚至超過它們的優(yōu)良性能。對于一般的個人使用者和中小型企業(yè)來說,MySQL提供的功能已經(jīng)綽綽有余。同時由于開放源碼這一特點,許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫。MySQL數(shù)據(jù)庫的開發(fā)得到了很多著名廠商和技術(shù)團隊的支持,是目前基于Unix、

Linux系統(tǒng)開發(fā)WEB應(yīng)用程序中很熱門的數(shù)據(jù)庫系統(tǒng)。

目前 Internet上流行的網(wǎng)站構(gòu)架方式是 LAMP(Linux+Apache+MySQL+PHP),即使用Linux作為操作系統(tǒng),Apache作為WEB服務(wù)器,MySQL作為數(shù)據(jù)庫,PHP作為服務(wù)器端腳本解釋器。Apache和MySQL及PHP彼此之間結(jié)合緊密、使用方便,均可運行于Linux、Unix、Windows等多種操作系統(tǒng)。相比于IIS(Internet Information Services),Apache還具有更高的安全性、低廉的價格等優(yōu)勢。另外,由于這四個軟件都是遵循GPL(General Public License)的開放源碼軟件,因此使用這種方式不用花一分錢就可以建立起一個穩(wěn)定、免費的網(wǎng)站系統(tǒng)。

(二)使用PHP和MySQL開發(fā)動態(tài)網(wǎng)站

下面就來簡述使用PHP和MySQL開發(fā)動態(tài)網(wǎng)站的全過程。由于使用習(xí)慣的原因,這個地方的系統(tǒng)環(huán)境為 windows XP sp2,PHP選用 php-5.2.9-2-Win32.zip,MySQL選用 MySQL-5.0.18-win32.zip,Apache選用 Apache_2.2.11-win32-x86-openssl-0.9.8i.msi。

1.PHP和MySQL的安裝配置

PHP的安裝配置有 CGI和模塊化安裝兩種不同模式。在CGI模式下,如果客戶機請求一個php文件,WEB服務(wù)器就會調(diào)用 php.exe去解釋這個文件,然后再把解釋的結(jié)果以網(wǎng)頁的形式返回給客戶機顯示。而在模塊化安裝模式中,PHP是與WEB服務(wù)器一起啟動并運行的,所以有著比CGI模式更好的安全性以及更好的執(zhí)行效率和速度。

這里將PHP5以模塊化安裝模式安裝配置在Apache下運行。將PHP5安裝包解壓縮到“C:PHP5”目錄下。解壓縮MySQL安裝包到任意目錄,點擊“setup.exe”文件安裝,按照提示安裝即可。在配置 MySQL時注意選擇數(shù)據(jù)庫的字符集為 GBK或GB2312以使數(shù)據(jù)庫能夠正確顯示中文。

軟件安裝完后,下面就是配置了。在 PHP5目錄下找到“php.ini-dist”文件,將之改名為“php.ini”,并將其復(fù)制到Apache安裝目錄下。修改Apache目錄下的“php.ini”文件:查找“extension_dir”,將其路徑修改為“C:PHP5ext”;查找“display_errors”值修改為“on”;查找“php_gd2.dll”去掉前面的分號;查找“cgi.force_redirect”把分號去掉,值改為 0;查找“session.save_path”把“/tmp”改為“C:PHP5 mp”,然后在PHP5目錄下建一個文件夾,文件夾名為“tmp”,去掉前面的分號;在 PHP5目錄中查找“php5ts.dll”,并將其復(fù)制到windows目錄下;查找“php5Apache2_2.dll”(Apache版本是 2.2),復(fù)制到Apache目錄下的 modules目錄下。打開Apache安裝目錄下conf目錄下的配置文件“http.conf”,在文件末尾,另起一行輸入“l(fā)oadmodule php5_module modules/php5Apache2_2.dll”;再另起一行輸入“addtype application/x-httpd-php .php”。重新啟動Apache服務(wù)器,PHP5在Apache下的安裝配置就完成了。

下面配置php5以支持MySQL數(shù)據(jù)庫。打開Apache安裝目錄下的php.ini文件:查找“extension=php_MySQL.dll”,去掉前面的分號;查找“MySQL.default_port = ”,值改為MySQL的端口號(3306);查找“MySQL.default_host =”,值改為“l(fā)ocalhost”;查找“MySQL.default_user=”,值寫為 root;查找“MySQL.default_password =”,值改為 root用戶的密碼;在php5目錄中查找libMySQL.dll,并將其復(fù)制到windows/system32目錄下。重新啟動Apache服務(wù)器,PHP對MySQL的支持配置就完成了。

2.使用PHP訪問MySQL數(shù)據(jù)庫

PHP最強大、最有意義的特性是提供了標準的數(shù)據(jù)庫接口,支持大范圍的數(shù)據(jù)庫,可直接與 Informix、Oracle、Sybase、PostgreSQL、MySQL、Access等連接。但PHP提供的數(shù)據(jù)庫接口支持彼此不統(tǒng)一,比如對Oracle、MySQL、Sybase的接口,彼此都不一樣,這也是PHP的一個弱點。PHP還支持ODBC接口的數(shù)據(jù)庫,可訪問幾乎所有的數(shù)據(jù)庫。以下是 PHP訪問MySQL數(shù)據(jù)庫的兩種方法。

(1)PHP使用數(shù)據(jù)庫函數(shù)方法訪問MySQL數(shù)據(jù)庫

在函數(shù)支持方面,PHP幾乎覆蓋了WEB應(yīng)用的各個方面,其中最有特色的是數(shù)據(jù)庫函數(shù)。在對MySQL數(shù)據(jù)庫的操作上,PHP一共有32個函數(shù)可供操作。這些函數(shù)包括了MySQL的各個方面,包括操作 MySQL數(shù)據(jù)庫,連接數(shù)據(jù)服務(wù)器,選擇數(shù)據(jù)庫,發(fā)送 SQL查詢的函數(shù)等等。以下介紹了幾個要用到主要函數(shù)。

連接數(shù)據(jù)庫的函數(shù):mysql_connect(“l(fā)ocalhost”,“user”,“password”)。參數(shù)“l(fā)ocalhost”是安裝 MySQL服務(wù)器的計算機的IP地址或主機名,參數(shù)“user”是有訪問數(shù)據(jù)庫權(quán)限的用戶ID,參數(shù)“password”是用戶的口令。

選擇數(shù)據(jù)庫的函數(shù):mysql_select_db(“mydb”)。參數(shù)“mydb”是數(shù)據(jù)庫名。

執(zhí)行SQL查詢的函數(shù):mysql_query(“query”,$link):參數(shù)“query”是一個包含要執(zhí)行的查詢的字符串,參數(shù)“$link”是mysql_connect()函數(shù)的返回值。

從查詢的結(jié)果集中取出數(shù)組的函數(shù):mysql_fetch_array($result,[MySQL_ASSOC])。參數(shù)“$result”是 mysql_query()函數(shù)的返回值,參數(shù)MySQL_ASSOC可選,表示關(guān)聯(lián)索引。

斷開連接的函數(shù):mysql_close($link)。參數(shù)“$link”是mysql_connect()函數(shù)的返回值。

(2)PHP使用ODBC方法訪問MySQL數(shù)據(jù)庫

雖然PHP通過ODBC支持幾乎所有的數(shù)據(jù)庫,但對于開發(fā)數(shù)據(jù)驅(qū)動的網(wǎng)站而言,選擇 MySQL應(yīng)該說是最佳組合。主要用到以下幾個函數(shù)。

連接 ODBC 數(shù)據(jù)庫的函數(shù):odbc_connect(“dsn”,“user”,“password”)。參數(shù)“dsn”為ODBC數(shù)據(jù)庫名稱,參數(shù)“user”及“password”分別為鏈接的帳號及密碼。

執(zhí)行SQL查詢的函數(shù):odbc_do ($link,“query”)。參數(shù)“$link”是odbc_connect()函數(shù)的返回值,參數(shù)“query”則為要執(zhí)行的SQL語句。

取得數(shù)據(jù)的函數(shù):odbc_result($result,“field”)。參數(shù)“$result”是odbc_do()函數(shù)的返回值,“field”是字段索引值。

關(guān)閉數(shù)據(jù)連接的函數(shù):odbc_close($link)。參數(shù)“$link”是odbc_connect()函數(shù)的返回值。

(三)結(jié)束語

目前,動態(tài)網(wǎng)站的開發(fā)是研究的熱點之一。PHP是一種簡單、高效的動態(tài)腳本編程語言,具有跨平臺、強大的數(shù)據(jù)庫支持等優(yōu)點,MySQL是一個免費、健壯、快速,支持多線程、多用戶的數(shù)據(jù)庫服務(wù)器,并且PHP內(nèi)置了對MySQL的支持,同時PHP與MySQL都是免費的,是動態(tài)網(wǎng)站開發(fā)的最佳組合。

[1] 賈素來.常見動態(tài)網(wǎng)頁技術(shù)比較[J].大眾科技,2008(9).

[2] 易競.PHP訪問 MySQL數(shù)據(jù)庫的實現(xiàn)[J].保險職業(yè)學(xué)院學(xué)報,2008,22(3).

[3] 王宏濤,羅正才.用 Apache&MySQL&PHP構(gòu)建高校教務(wù)管理系統(tǒng)[J].吉林大學(xué)學(xué)報(信息科學(xué)版),2004,22(2).

[4] PHP在 WINXP下如何安裝. http://blog.sina.com.cn/s/blog_4b2fd935010007s0.html.2007-02-07

[5] 王逾西.動態(tài)網(wǎng)頁的數(shù)據(jù)庫連接技術(shù)[J].天津市財貿(mào)管理干部學(xué)院學(xué)報,2010(1).

TP391

A

1008-1151(2011)03-0014-02

2010-08-08

賈素來(1979-),男,無錫商業(yè)職業(yè)技術(shù)學(xué)院信息工程系講師,研究方向為軟件工程、信息系統(tǒng)設(shè)計。

猜你喜歡
服務(wù)器動態(tài)數(shù)據(jù)庫
國內(nèi)動態(tài)
國內(nèi)動態(tài)
國內(nèi)動態(tài)
通信控制服務(wù)器(CCS)維護終端的設(shè)計與實現(xiàn)
動態(tài)
數(shù)據(jù)庫
中國服務(wù)器市場份額出爐
得形忘意的服務(wù)器標準
計算機網(wǎng)絡(luò)安全服務(wù)器入侵與防御
數(shù)據(jù)庫
岗巴县| 涡阳县| 玉龙| 威宁| 昭通市| 修文县| 金溪县| 柏乡县| 咸丰县| 固原市| 汤阴县| 宁明县| 礼泉县| 军事| 阳原县| 万载县| 宜阳县| 剑阁县| 横山县| 高陵县| 兴仁县| 威宁| 富宁县| 东方市| 三门县| 阿城市| 平利县| 洪湖市| 体育| 禹城市| 镇原县| 神农架林区| 漯河市| 旬阳县| 南陵县| 略阳县| 三明市| 衡南县| 上栗县| 吉水县| 大宁县|