第一篇:使用 PHP 和 SOAP 開(kāi)發(fā)基于 Web 服務(wù)的應(yīng)用程序
使用 PHP 和 SOAP 開(kāi)發(fā)基于 Web 服務(wù)的應(yīng)用程序
作者: Claymore 時(shí)間: 2011-11-22 16:59:51
簡(jiǎn)介: SOAP 是 Web 服務(wù)中最常用的協(xié)議,通常的 Web 服務(wù)使用 Java 語(yǔ)言編寫(xiě),但眾多的 PHP 程序員可能更喜歡使用 PHP 來(lái)完成整個(gè) Web 應(yīng)用程序的開(kāi)發(fā)。本文介紹了使用 PHP5 中新增的 SOAP 擴(kuò)展(ext/soap)進(jìn)行 Web 服務(wù)開(kāi)發(fā)的步驟,包括 WSDL 文件的編寫(xiě),Web 服務(wù)端和客戶(hù)端腳本的開(kāi)發(fā)。這可以幫助 PHP 程序員快速開(kāi)發(fā)基于 Web 服務(wù)的應(yīng)用程序,而不需要脫離 PHP 環(huán)境,借助其他語(yǔ)言或者編程模型開(kāi)發(fā) Web 服務(wù)。
PHP SOAP 擴(kuò)展
SOAP 的全稱(chēng)為簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議(Simple Object Access Protocol)。它是一種基于 XML 的,可擴(kuò)展的通信協(xié)議。SOAP 提供了一種標(biāo)準(zhǔn),使得運(yùn)行在不同平臺(tái)上并使用不同的編程語(yǔ)言編寫(xiě)的應(yīng)用程序可以互相進(jìn)行通信。SOAP 的可擴(kuò)展性和平臺(tái)無(wú)關(guān)性使得它被廣泛用作 Web 服務(wù)的通信協(xié)議。
由于 Java 語(yǔ)言提供了對(duì) SOAP 的良好支持,通常基于 Web 服務(wù)的應(yīng)用程序使用 Java 語(yǔ)言編寫(xiě)。對(duì)于廣大的 PHP 程序員來(lái)說(shuō),可能會(huì)有一點(diǎn)小小的不滿(mǎn) – PHP 的較早版本根本沒(méi)有對(duì) SOAP 的直接支持,只能通過(guò) PEAR(the PHP Extension and Application Repository)中的 SOAP 庫(kù)或者第三方產(chǎn)品 NuSOAP 來(lái)開(kāi)發(fā) Web 服務(wù)。不過(guò)最近的版本已經(jīng)改變了這一狀況。自 PHP 5 開(kāi)始新增了內(nèi)置的 SOAP 擴(kuò)展(ext/soap),從此我們不需要下載額外的擴(kuò)展庫(kù)或是代碼包來(lái)開(kāi)發(fā)基于 SOAP 的應(yīng)用程序了。接下來(lái)讓我們來(lái)看看 SOAP 擴(kuò)展中都有哪些內(nèi)容。
PHP 5 中的 SOAP 擴(kuò)展(ext/soap)PHP 5 最早發(fā)布的版本 5.0.0 中就已經(jīng)提供了 SOAP 擴(kuò)展,不過(guò)當(dāng)時(shí)的 PHP 手冊(cè)中聲明這個(gè)擴(kuò)展是試驗(yàn)性(experimental)的。實(shí)際上當(dāng)時(shí)的版本已經(jīng)實(shí)現(xiàn)了比較完善的功能,也沒(méi)有必要為此而擔(dān)心。目前這個(gè)擴(kuò)展還在不斷地完善,早期版本中的大部分 bug 都已經(jīng)得到了修正,目前最新的版本(5.3.0)中已經(jīng)提供了比較完整的對(duì) SOAP 的支持,而且我們有理由相信,以后的版本還會(huì)更好。
SOAP 擴(kuò)展庫(kù)結(jié)構(gòu)
ext/soap 中包括六個(gè)預(yù)定義的類(lèi),通過(guò)這些類(lèi),我們可以創(chuàng)建 Web 服務(wù)端(SoapServer 類(lèi)),客戶(hù)端(SoapClient 類(lèi)),處理 SOAP 請(qǐng)求和應(yīng)答(SoapHeader, SoapParam, SoapVar 類(lèi)),診斷錯(cuò)誤(SoapFault 類(lèi))。這些類(lèi)之間的聯(lián)系如圖 1 所示:
圖 1.SOAP 擴(kuò)展的結(jié)構(gòu)
SOAP 服務(wù)類(lèi) SoapServer SoapServer 類(lèi)用來(lái)開(kāi)發(fā) Web 服務(wù)端應(yīng)用程序。這個(gè)類(lèi)中包含創(chuàng)建,設(shè)置和操縱 Web 服務(wù)的函數(shù)。有兩種方式可以向 Web 服務(wù)中添加操作(Operation)。一種方式是直接添加已定義的函數(shù),另一種方式是添加已定義好的類(lèi),從而將該類(lèi)的公有成員函數(shù)添加到 Web 服務(wù)中。
另一個(gè)需要說(shuō)明的特性是,PHP 支持兩種 Web 服務(wù)的模式:WSDL 模式和 non-WSDL 模式,為了便于理解,我們首先從 Web 服務(wù)的兩種實(shí)現(xiàn)模式開(kāi)始說(shuō)起。
PHP 中 Web 服務(wù)的兩種模式:WSDL 模式和 non-WSDL 模式
對(duì)于 Web 服務(wù)來(lái)說(shuō),主要有兩種實(shí)現(xiàn)模式 – 契約先行(Contract First)模式和代碼先行(Code Fist)模式。契約先行模式的實(shí)現(xiàn)中,首要工作是定義針對(duì)這個(gè) Web 服務(wù)的接口的 WSDL(Web Services Description Language,Web 服務(wù)描述語(yǔ)言)文件。WSDL 文件中描述了 Web 服務(wù)的位置,可提供的操作集,以及其他一些屬性。WSDL 文件也就是 Web 服務(wù)的“契約”?!捌跫s”訂立之后,再據(jù)此進(jìn)行服務(wù)器端和客戶(hù)端的應(yīng)用程序開(kāi)發(fā)。這種模式對(duì)應(yīng)上節(jié)所說(shuō)的 WSDL 模式。我們后文中介紹的例子就是使用這一模式實(shí)現(xiàn)的。
與契約先行模式不同,代碼先行模式中,第一步工作是實(shí)現(xiàn) Web 服務(wù)端,然后根據(jù)服務(wù)端的實(shí)現(xiàn),用某種方法(自動(dòng)生成或手工編寫(xiě))生成 WSDL 文件。但是由于 PHP 本身并沒(méi)有提供從 Web 服務(wù)實(shí)現(xiàn)代碼中生成 WSDL 文件的方法,因此就要以 non-WSDL 模式連接服務(wù)端,即不通過(guò) WSDL 文件創(chuàng)建 SoapServer 和 SoapClient 示例,而是直接向構(gòu)造函數(shù)傳遞必要的參數(shù)。當(dāng)然,代碼先行模式也有其他的解決方法,一些集成的 PHP 開(kāi)發(fā)工具(如 Zend Studio)就提供了根據(jù) Web 服務(wù)實(shí)現(xiàn)代碼生成 WSDL 文件的功能。
SOAP 客戶(hù)端類(lèi) SoapClient SOAP 客戶(hù)端類(lèi) SoapClient 用于開(kāi)發(fā) Web 服務(wù)的客戶(hù)端程序??捎玫某蓡T函數(shù)主要有創(chuàng)建客戶(hù)端實(shí)例,調(diào)用可用操作,查詢(xún)可用操作和數(shù)據(jù)類(lèi)型等。除此之外還包括了可用于程序調(diào)試的函數(shù) – 獲取上次請(qǐng)求和應(yīng)答的 SOAP 數(shù)據(jù)。
SOAP 參數(shù)類(lèi) SoapHeader, SoapParam, SoapVar SoapParam 和 SoapVar 主要用來(lái)封裝用于放入 SOAP 請(qǐng)求中的數(shù)據(jù),他們主要在 non-WSDL 模式下使用。事實(shí)上,在 WSDL 模式下,SOAP 請(qǐng)求的參數(shù)可以通過(guò)數(shù)組方式包裝,SOAP 擴(kuò)展會(huì)根據(jù) WSDL 文件將這個(gè)數(shù)組轉(zhuǎn)化成為 SOAP 請(qǐng)求中的數(shù)據(jù)部分,所以并不需要這兩個(gè)類(lèi)。而在 non-WSDL 模式下,由于沒(méi)有提供 WSDL 文件,所以必須通過(guò)這兩個(gè)類(lèi)進(jìn)行包裝。SoapHeader 類(lèi)用來(lái)構(gòu)造 SOAP 頭,SOAP 頭可以對(duì) SOAP 的能力進(jìn)行必要的擴(kuò)展。SOAP 頭的一個(gè)主要作用就是用于簡(jiǎn)單的身份認(rèn)證,后面會(huì)有例子說(shuō)明這一點(diǎn)。
SOAP 異常類(lèi) SoapFault 這個(gè)類(lèi)從 PHP 的 Exception 類(lèi)繼承而來(lái),可以用來(lái)實(shí)現(xiàn) SOAP 中的異常處理機(jī)制,由 SOAP 服務(wù)端拋出。SOAP 客戶(hù)端可以接收該類(lèi)的實(shí)例,用于獲取有用的調(diào)試信息。
安裝 SOAP 擴(kuò)展
為了使用 SOAP 擴(kuò)展,我們需要在 Web 服務(wù)器上安裝它。這里有幾個(gè)因素需要考慮。
? 安裝的前置條件:在官方的使用手冊(cè)中可以找到,ext/soap 擴(kuò)展使用了 GNOME XML 庫(kù),因此在安裝 SOAP 擴(kuò)展之前需要安裝這個(gè)庫(kù)(需要 2.5.4 以上版本)。? PHP 是否已安裝:
o 如果你想在安裝 PHP 的同時(shí)加入 SOAP 擴(kuò)展,那再簡(jiǎn)單不過(guò)了。如果是下載 PHP 源代碼自己編譯安裝的情況,則只需要在編譯時(shí)的 configure 命令中添加選項(xiàng)--enable-soap 即可。如果是直接使用二進(jìn)制文件安裝(通常只用于 Windows平臺(tái)),安裝包中則已經(jīng)包括了這一擴(kuò)展,不需要額外安裝。
o 而如果需要在已經(jīng)安裝好的 PHP 上添加 SOAP 擴(kuò)展,需要做的工作就要多一些。在編譯 SOAP 擴(kuò)展的源代碼之前需要使用 phpize 命令設(shè)置編譯環(huán)境,然后再使用 configure 命令,之后編譯并安裝 SOAP 擴(kuò)展。o
編譯安裝 SOAP 擴(kuò)展之后,我們還需要修改 PHP 的配置文件,以便 SOAP 擴(kuò)展可以正確的被 PHP 加載。對(duì)于 Linux平臺(tái)來(lái)說(shuō),需要在 php.ini 中加入如下代碼:extension = php_soap.so
而對(duì)于 Windows平臺(tái),需要加入的代碼為:extension = php_soap.dll
除此之外,可能還需要設(shè)置擴(kuò)展庫(kù)的位置,這一信息在 php.ini 的 extension_dir 域中保存,例如:
extension_dir = “/usr/local/php/lib/”
上面的工作完成之后,還需要注意的是 SOAP 擴(kuò)展在配置文件中有獨(dú)立的代碼段:
清單 1.php.ini 中 SOAP 擴(kuò)展的設(shè)置
soap];Enables or disables WSDL caching feature.soap.wsdl_cache_enabled=1;Sets the directory name where SOAP extension will put cache files.soap.wsdl_cache_dir=“C:xampptmp”;(time to live)Sets the number of second while cached file will be used;instead of original one.soap.wsdl_cache_ttl=86400
PHP 處理 WSDL 文件時(shí)使用緩存的行為。這三項(xiàng)設(shè)置分別說(shuō)明是否啟用緩存、緩存文件的路徑、緩存的生存時(shí)間。啟用緩存會(huì)加快 PHP 處理 WSDL 文件的速度,但最好在調(diào)試代碼時(shí)關(guān)閉緩存,以避免一些因緩存行為而出現(xiàn)的問(wèn)題。
一個(gè)簡(jiǎn)單的例子:產(chǎn)品資料查詢(xún)
設(shè)想這樣一個(gè)場(chǎng)景:A 公司是筆記本電腦的生產(chǎn)商,B 公司是 A 公司的經(jīng)銷(xiāo)商。B 公司需要向他們的客戶(hù)提供一個(gè)產(chǎn)品信息查詢(xún)的網(wǎng)站,用戶(hù)輸入產(chǎn)品編號(hào)就可以查詢(xún)到該產(chǎn)品的詳細(xì)信息,包括 CPU,內(nèi)存,屏幕尺寸,硬盤(pán)等。由于經(jīng)常有
新產(chǎn)品面世,所以 A 公司的產(chǎn)品信息數(shù)據(jù)庫(kù)會(huì)頻繁地更新,對(duì)此比較好的解決方案是 A 公司提供一個(gè)產(chǎn)品信息查詢(xún)的 Web 服務(wù),而 B 公司開(kāi)發(fā)客戶(hù)端來(lái)調(diào)用這個(gè) Web 服務(wù)提供的操作。整個(gè)系統(tǒng)的架構(gòu)如下圖所示:
圖 2.產(chǎn)品資料查詢(xún)系統(tǒng)架構(gòu)
主要的組成部分有:
? 產(chǎn)品信息數(shù)據(jù)庫(kù),其中存儲(chǔ)了產(chǎn)品代碼,CPU 信息,內(nèi)存容量,屏幕尺寸,硬盤(pán)容量等產(chǎn)品信息。
? Web 服務(wù)端,它發(fā)布一個(gè) Web 服務(wù),響應(yīng)客戶(hù)端的查詢(xún)請(qǐng)求,并將查詢(xún)結(jié)果放入 SOAP 應(yīng)答中返回給客戶(hù)端。? 客戶(hù)機(jī),它接收瀏覽器發(fā)來(lái)的查詢(xún)條件,以此生成 SOAP 請(qǐng)求發(fā)送給 Web 服務(wù)端,并接收 SOAP 應(yīng)答,將其發(fā)送到瀏覽器并顯示出來(lái)。瀏覽器的輸出如圖 3 所示。
本質(zhì)上 Web 服務(wù)端和客戶(hù)機(jī)都是一個(gè)相對(duì)獨(dú)立的 Web 應(yīng)用程序,它們之間只是通過(guò) SOAP 消息進(jìn)行通信。在不改變通信“契約”的情況下,Web 服務(wù)端和客戶(hù)端內(nèi)部實(shí)現(xiàn)的改變均不影響這個(gè)系統(tǒng)的功能。所以對(duì)于“契約”-即 WSDL 文件的定義就是非常重要的一步。
圖 3.產(chǎn)品信息查詢(xún)系統(tǒng)頁(yè)面
WSDL 文件的編寫(xiě)
前面提到過(guò),PHP 本身并沒(méi)有提供可以自動(dòng)生成 WSDL 文件的方法,因此就需要我們自己編寫(xiě) WSDL 文件。WSDL 的結(jié)構(gòu)雖然比較清楚,但完全依靠文本編輯器創(chuàng)建一個(gè) WSDL 文件依然是個(gè)艱難的任務(wù)。這是因?yàn)?WSDL 中的元素比較多,每個(gè)元素還有若干屬性,要完全掌握這些比較困難。另一方面,如果沒(méi)有開(kāi)發(fā)環(huán)境的輔助,我們?cè)诰帉?xiě) WSDL 文件中的錯(cuò)誤就很難被發(fā)現(xiàn),存在任何一個(gè)微小的錯(cuò)誤(例如標(biāo)簽名 message 誤寫(xiě)成了 massage),我們的應(yīng)用程序也無(wú)法正常工作。因此在編寫(xiě) WSDL 文件時(shí)使用適當(dāng)?shù)拈_(kāi)發(fā)工具是很必要的。下面我們介紹兩種借助開(kāi)發(fā)工具生成 WSDL 文件的方法,一種適用于契約先行模式,另一種適用于代碼先行模式。
使用 PDT(PHP Development Tool)編寫(xiě) WSDL 文件
PDT(PHP Development Tool)是一個(gè)基于 Eclipse 的集成開(kāi)發(fā)環(huán)境,它提供了對(duì)于 PHP 開(kāi)發(fā)中各種需求的良好支持。我們可以在菜單中選擇 New->Other...,然后在彈出的窗口中選擇 Web Service 下的 WSDL File,然后輸入文件名,創(chuàng)建 WSDL 文件,PDT 會(huì)生成一個(gè)默認(rèn)的 WSDL“框架”,并以圖形化的方法顯示出來(lái),對(duì)應(yīng)本文的例子,WSDL 文件的圖形化表示如下圖:
圖 4.PDT 中 WSDL 文件的圖形化表示
我們可以看到,這個(gè)圖形化的表示方法包含了 WSDL 的全部要素:端口,消息,綁定(Bindings),數(shù)據(jù)類(lèi)型和服務(wù)。對(duì)于除了數(shù)據(jù)類(lèi)型之外的部分,我們只需要點(diǎn)擊相應(yīng)部分作出修改即可。對(duì)于數(shù)據(jù)類(lèi)型部分的修改,則需要點(diǎn)擊最右側(cè)的 灰色箭頭,打開(kāi)數(shù)據(jù)類(lèi)型的視圖,對(duì)應(yīng)本文需求的數(shù)據(jù)類(lèi)型視圖如下:
圖 5.PDT 中輸入的數(shù)據(jù)類(lèi)型的圖形化表示
圖 6.PDT 中輸出的數(shù)據(jù)類(lèi)型的圖形化表示
之后我們可以修改數(shù)據(jù)類(lèi)型的名稱(chēng),添加元素,編輯復(fù)雜數(shù)據(jù)類(lèi)型,修改元素的類(lèi)型和名稱(chēng)等。所有上述的修改都會(huì)被 PDT 自動(dòng)轉(zhuǎn)換成對(duì)應(yīng)的 WSDL 語(yǔ)句。
以上三個(gè)視圖構(gòu)成了 WSDL 的完整描述,點(diǎn)擊界面下方的 Source 標(biāo)簽,就可以看到 WSDL 文件的源代碼:
清單 2.WSDL 源代碼
xmlns:tns=“http://soapexample.cn/ProductQuery/” xmlns:wsdl=“http://schemas.xmlsoap.org/wsdl/”xmlns:xsd=“http://specialchars($client->__getLastRequest()).” 另外為了開(kāi)啟跟蹤功能,我們需要在 SoapClient 的構(gòu)造函數(shù)中輸入額外的一個(gè)參數(shù): 清單 20.開(kāi)啟 SOAP 跟蹤功能 $client = new SoapClient('./ProductQuery.wsdl' , array('trace' => 1)); 這樣,我們就可以在瀏覽器中觀察到 SOAP 請(qǐng)求和應(yīng)答的內(nèi)容: 清單 21.錯(cuò)誤的 SOAP 請(qǐng)求和應(yīng)答 Request: 可以發(fā)現(xiàn),SOAP 請(qǐng)求的結(jié)構(gòu)跟我們期望的不同,我們就可以知道,是輸入的參數(shù)不正確造成的,改正了這個(gè)錯(cuò)誤之后,我們可以看到正確的 SOAP 請(qǐng)求和應(yīng)答: 清單 22.正確的 SOAP 請(qǐng)求和應(yīng)答 Request: 1175-PXA 使用 PHP 開(kāi)發(fā)基于 Web 服務(wù)的應(yīng)用程序總的來(lái)說(shuō)是比較簡(jiǎn)單的。從前文的例子中可以看到,我們不需要很多的代碼就可以創(chuàng)建一個(gè)簡(jiǎn)單的 Web 服務(wù)端和客戶(hù)端,唯一的小麻煩可能是創(chuàng)建 WSDL 文件,但我們借助一些 PHP 集成開(kāi)發(fā)環(huán)境的幫助一樣可以輕松解決。這可以讓習(xí)慣使用 PHP 開(kāi)發(fā) Web 應(yīng)用程序的程序員不需要學(xué)習(xí)其他語(yǔ)言就能夠開(kāi)發(fā)自己的基于 Web 服務(wù)的應(yīng)用程序。 本文中的例子相對(duì)來(lái)說(shuō)比較簡(jiǎn)單,但我們必須了解,PHP 的 SOAP 擴(kuò)展目前也存在著一些不足之處。例如: ? PHP 對(duì)于某些 SOAP 協(xié)議中的元素不能正確解析,例如目前 SoapServer 類(lèi)并不能處理客戶(hù)端發(fā)來(lái)的 SOAP 請(qǐng)求中的 Header 部分,這使得一些基于 Header 的特性無(wú)法在 PHP 中得到實(shí)現(xiàn),例如權(quán)限驗(yàn)證等。 ? 由于 PHP 是弱類(lèi)型語(yǔ)言,而 SOAP 協(xié)議中對(duì)類(lèi)型的定義是比較嚴(yán)格的,所以 PHP 無(wú)法僅僅根據(jù)代碼生成可供使用的 WSDL 文件,只能通過(guò) PHP Doc 之類(lèi)的機(jī)制在注釋中聲明,從而使輔助工具獲得參數(shù)的類(lèi)型。 ? PHP 的弱類(lèi)型性質(zhì)還造成 SOAP 擴(kuò)展對(duì)類(lèi)型的檢查并不嚴(yán)格,如果服務(wù)端的實(shí)現(xiàn)中如果返回了類(lèi)型錯(cuò)誤的數(shù)據(jù)(例如應(yīng)該返回類(lèi)型為 integer 的數(shù)據(jù),實(shí)際上卻返回了字符串),則并不會(huì)產(chǎn)生異常,而只是將返回的數(shù)據(jù)解釋成 WSDL 中定義的類(lèi)型,但是這種轉(zhuǎn)換通常是不能得到正確結(jié)果的。 ? PHP 的文檔中對(duì)于 SOAP 調(diào)用的參數(shù)構(gòu)造介紹很少,關(guān)聯(lián)數(shù)組構(gòu)造方法與 WSDL 中的數(shù)據(jù)定義的映射關(guān)系也不是十分清晰易懂。對(duì)于數(shù)據(jù)類(lèi)型較為復(fù)雜的情況,單純使用數(shù)組構(gòu)造一個(gè)具有很多層次的參數(shù)結(jié)構(gòu)也是困難且容易出錯(cuò)的。 幸運(yùn)的是,PHP 的開(kāi)發(fā)和維護(hù)者們始終把 SOAP 擴(kuò)展看做 PHP 中重要的組成部分,自從 PHP 5.0.0 中開(kāi)始提供 SOAP 擴(kuò)展以來(lái),它就沒(méi)有停止過(guò)更新,每一次新的版本都會(huì)有新特性發(fā)布,同時(shí)也會(huì)修正很多原有的缺陷。最新的版本(5.3.0)最近剛剛發(fā)布,其中對(duì)于上述的問(wèn)題 1 和 4 都有很好的解決。所以我們有理由相信,PHP 會(huì)提供對(duì) SOAP 越來(lái)越完善的支持。 《web應(yīng)用程序開(kāi)發(fā)》課程教學(xué)大綱 課程編號(hào): 課程類(lèi)別: 專(zhuān)業(yè)選修課 計(jì)劃學(xué)時(shí):64 其中理論講授:32 實(shí)驗(yàn)或?qū)嵺`: 適用專(zhuān)業(yè):計(jì)算機(jī)網(wǎng)絡(luò)技術(shù) 教材與主要參考資料: 1、《ASP.NET程序設(shè)計(jì)》,尚俊杰,清華大學(xué)出版社。 2、《WEB程序設(shè)計(jì)技術(shù)---ASP.NET》, 秦學(xué)禮,清華大學(xué)出版社 3、《ASP.NET簡(jiǎn)明教程》,金雪云,清華大學(xué)出版社 4、《ASP.NET基礎(chǔ)教程》,馮方方,清華大學(xué)出版社。 課程的教學(xué)目的與任務(wù) 對(duì)于微軟環(huán)境下的開(kāi)發(fā)人員來(lái)說(shuō),.NET的重要性無(wú)論如何強(qiáng)調(diào)都不為過(guò)。因此全面透徹理解這種新技術(shù),對(duì)于每一位希望與時(shí)俱進(jìn)的架構(gòu)師、程序員和技術(shù)管理人員來(lái)書(shū),都至關(guān)重要。本課程將介紹開(kāi)發(fā) ASP.NET 程序所涉及的開(kāi)發(fā)工具和運(yùn)行環(huán)境、VB.NET 程序設(shè)計(jì)基礎(chǔ)和 ASP.NET 的程序設(shè)計(jì)基礎(chǔ)等有關(guān)內(nèi)容。通過(guò)本課程的學(xué)習(xí),掌握開(kāi)發(fā) ASP.NET 程序的基礎(chǔ)知識(shí)和基本方法,對(duì).net平臺(tái)下的程序設(shè)計(jì)有一個(gè)全面的認(rèn)識(shí)和了解,并能夠獨(dú)立自主開(kāi)發(fā)留言板、BBS、聊天室等web應(yīng)用程序。 課程的基本要求 1.掌握.NET框架結(jié)構(gòu)及如何搭建運(yùn)行環(huán)境; 2.掌握VB.NET程序設(shè)計(jì)語(yǔ)言基礎(chǔ); 3.掌握HTML服務(wù)器控件和Web服務(wù)器控件的使用; 4.掌握Request、Response等重要的內(nèi)部對(duì)象的基本知識(shí)和基本方法; 5.掌握數(shù)據(jù)庫(kù)的基礎(chǔ)知識(shí)和SQL語(yǔ)言,能利用ASP.NET進(jìn)行數(shù)據(jù)庫(kù)程序設(shè)計(jì); 6.掌握對(duì)文件和文件夾操作的基本方法; 7.掌握利用隱藏代碼和業(yè)務(wù)對(duì)象實(shí)現(xiàn)程序代碼和HTML代碼分離; 8.了解.NET的最新特性Web服務(wù); 9.掌握配置Global.asax、web.Config文件和網(wǎng)絡(luò)安全、使用緩存、調(diào)試程序等高級(jí)應(yīng)用。 課程內(nèi)容、教學(xué)方法及學(xué)時(shí)分配建議 第一章: ASP.NET 入門(mén) 建議學(xué)時(shí):2 其中講授: 1 實(shí)驗(yàn)或?qū)嵺`:1 教學(xué)重點(diǎn):掌握 ASP.NET 的開(kāi)發(fā)工具和運(yùn)行環(huán)境; 教學(xué)難點(diǎn):掌握新建一個(gè) ASP.NET 的基本流程和建立應(yīng)用程序的意義和方法; 教學(xué)方法:講授、演示 教學(xué)內(nèi)容:第一節(jié) 網(wǎng)絡(luò)程序設(shè)計(jì)概述 第二節(jié) ASP.NET簡(jiǎn)介 第三節(jié) ASP.NET的運(yùn)行環(huán)境 第四節(jié) ASP.NET的開(kāi)發(fā)工具 第五節(jié) 新建一個(gè)簡(jiǎn)單的ASP.NET文件 第二章: VB.NET 程序設(shè)計(jì)基礎(chǔ) 建議學(xué)時(shí): 8 其中講課: 4 實(shí)驗(yàn)或?qū)嵺`:4 教學(xué)重點(diǎn):掌握數(shù)據(jù)類(lèi)型、常量、變量、函數(shù)、過(guò)程、循環(huán)語(yǔ)句、選擇語(yǔ)句等; 教學(xué)難點(diǎn):是類(lèi)的定義、屬性、方法、繼承、重寫(xiě)、共享屬性、共享方法等; 教學(xué)方法:講授、演示 教學(xué)內(nèi)容:第一節(jié) ASP.NET的數(shù)據(jù)類(lèi)型 第二節(jié) ASP.NET常量 第三節(jié) ASP.NET變量 第四節(jié) ASP.NET數(shù)組 第五節(jié) ASP.NET運(yùn)算符 第六節(jié) 流程控制語(yǔ)句 第三章: 服務(wù)器控件 建議學(xué)時(shí): 12 其中講課: 6 實(shí)驗(yàn)或?qū)嵺`:6 教學(xué)重點(diǎn):Web 服務(wù)器控件的使用; 教學(xué)難點(diǎn):用戶(hù)控件的使用和控件的綁定、樣式等高級(jí)操作; 教學(xué)方法:講授、演示 教學(xué)內(nèi)容:第一節(jié) 控件簡(jiǎn)介 第二節(jié) HTML服務(wù)器控件 第三節(jié) WEB服務(wù)器控件 第四節(jié) 驗(yàn)證控件 第五節(jié) 用戶(hù)控件 第六節(jié) 對(duì)控件的高級(jí)操作 第四章: 內(nèi)部對(duì)象 建議學(xué)時(shí): 12 其中講課: 6 實(shí)驗(yàn)或?qū)嵺`:教學(xué)重點(diǎn):Request、Response、Cookie、Application、Server 等對(duì)象的基本知識(shí); 教學(xué)難點(diǎn):Request、Response、Cookie、Application、Server 等對(duì)象的基本方法 教學(xué)方法:講授、演示 教學(xué)內(nèi)容:第一節(jié) ASP.NET內(nèi)部對(duì)象概述 第二節(jié) Page對(duì)象 第三節(jié) Request對(duì)象 第四節(jié) Response對(duì)象 第五節(jié) HttpCookie對(duì)象 第六節(jié) Session對(duì)象 第七節(jié) Application對(duì)象 第八節(jié) Server對(duì)象 第九節(jié) Mail對(duì)象 Session Session、、第五章: 數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí) 建議學(xué)時(shí): 4 其中講課: 2 實(shí)驗(yàn)或?qū)嵺`:2 教學(xué)重點(diǎn):數(shù)據(jù)庫(kù)的基本概念; 教學(xué)難點(diǎn):SQL語(yǔ)言中的Select、Insert、Update和Delete語(yǔ)句。; 教學(xué)方法:講授、演示 教學(xué)內(nèi)容:第一節(jié) 數(shù)據(jù)庫(kù)基本概念 第二節(jié) 建立數(shù)據(jù)庫(kù) 第三節(jié) SQL語(yǔ)言簡(jiǎn)介 第六章: ASP.NET 存取數(shù)據(jù)庫(kù) 建議學(xué)時(shí): 8 其中講課: 4 實(shí)驗(yàn)或?qū)嵺`:4 教學(xué)重點(diǎn):掌握利用 ASP.NET 連接數(shù)據(jù)庫(kù),查詢(xún)、添加、刪除和更新刪除的基本方法; 教學(xué)難點(diǎn):利用 DataGrid 控件刪除和更新記錄的方法; 教學(xué)方法:講授、演示 教學(xué)內(nèi)容:第一節(jié) ADO.NETT簡(jiǎn)介 第二節(jié) 簡(jiǎn)單存取數(shù)據(jù)庫(kù) 第三節(jié) 使用DataGrid 控件存取數(shù)據(jù)庫(kù) 第七章: 深入進(jìn)行數(shù)據(jù)庫(kù)編程 建議學(xué)時(shí): 8 其中講課: 4 實(shí)驗(yàn)或?qū)嵺`:4 教學(xué)重點(diǎn):DataGrid、DataList 和 Repeater 控件的使用方法; 教學(xué)難點(diǎn):在 SQL 語(yǔ)句中使用參數(shù)和對(duì) DataSet 對(duì)象的操作; 教學(xué)方法:講授、演示 教學(xué)內(nèi)容:第一節(jié) ADO的內(nèi)部對(duì)象 第二節(jié) Connection對(duì)象 第三節(jié) Command對(duì)象 第四節(jié) 存取SQL Server數(shù)據(jù)庫(kù) 第五節(jié) 對(duì)多個(gè)表進(jìn)行組合查詢(xún) 第六節(jié) 開(kāi)發(fā)實(shí)例---在線通訊錄 第八章:文件及文件夾操作 建議學(xué)時(shí): 2 其中講課: 1 實(shí)驗(yàn)或?qū)嵺`:1 教學(xué)重點(diǎn):掌握對(duì)文件和文件夾操作的基本方法; 教學(xué)難點(diǎn):文件和文件夾的新建、復(fù)制、移動(dòng)和刪除等,以及對(duì)文本文件的操作; 教學(xué)方法:講授、演示 教學(xué)內(nèi)容:第一節(jié) 文件存取組件 第二節(jié) 廣告輪顯組件 第三節(jié) 瀏覽器兼容組件 第四節(jié) 文件超級(jí)鏈接組件 第五節(jié) 計(jì)數(shù)器組件 第九章:隱藏代碼與業(yè)務(wù)對(duì)象 建議學(xué)時(shí): 2 其中講課: 1 實(shí)驗(yàn)或?qū)嵺`:1 教學(xué)重點(diǎn):在普通 ASP.NET 文件中使用隱藏代碼和使用不包含界面的業(yè)務(wù)對(duì)象; 教學(xué)難點(diǎn):使用包含界面的業(yè)務(wù)對(duì)象(自定義控件); 教學(xué)方法:講授、演示 教學(xué)內(nèi)容:普通 ASP.NET 文件中使用隱藏代碼 第十章:Web 服務(wù) 建議學(xué)時(shí): 4 其中講課: 2 實(shí)驗(yàn)或?qū)嵺`:2 教學(xué)重點(diǎn):理解 Web 服務(wù)的基本概念,并能夠建立、通過(guò)代理類(lèi)調(diào)用一個(gè)簡(jiǎn)單的 Web 服務(wù); 教學(xué)難點(diǎn):理解 Web 服務(wù)的基本概念,并能夠建立、通過(guò)代理類(lèi)調(diào)用一個(gè)簡(jiǎn)單的 Web 服務(wù); 教學(xué)方法:講授、演示 教學(xué)內(nèi)容:Web 服務(wù)的基本概念 第十一章:配置應(yīng)用程序及其它應(yīng)用 建議學(xué)時(shí): 2 其中講課: 1 實(shí)驗(yàn)或?qū)嵺`:1 教學(xué)重點(diǎn):配置 Global.asax 和 Web.Config 文件; 教學(xué)難點(diǎn):網(wǎng)站的安全考慮; 教學(xué)方法:講授、演示 教學(xué)內(nèi)容:第一節(jié) 配置 Global.asax文件 第二節(jié) 配置Web.Config 文件 PHP程序員開(kāi)發(fā)win32應(yīng)用程序之夢(mèng) 相信做純WEB開(kāi)發(fā)的PHP程序員都會(huì)想過(guò),要是PHP能開(kāi)發(fā)windows本地應(yīng)用程序多好,于是上網(wǎng)一查找出來(lái)的很多都是“PHP-GTK”的老文章,這東西好像已經(jīng)沒(méi)人維護(hù)了,隨便看了下,也就沒(méi)去細(xì)研究了。前陣子折騰了node-webkit,這東西可以用javascript + chorme內(nèi)核blink 開(kāi)發(fā)本地應(yīng)用,滿(mǎn)足純WEB程序員開(kāi)發(fā)本地應(yīng)用程序的夢(mèng)想。node-webkit有幾個(gè)優(yōu)點(diǎn): 1、內(nèi)置blink內(nèi)核,跟隨google升級(jí),支持現(xiàn)代瀏覽器特性,媽媽再也不用擔(dān)心我的瀏覽器兼容問(wèn)題了 2、內(nèi)置nodejs,就是加強(qiáng)版的javascript,WEB程序員入手快,nodejs功能強(qiáng)大 3、入門(mén)級(jí)開(kāi)發(fā)流程比較簡(jiǎn)單,沒(méi)有太多看不明白的東西 4、跨平臺(tái),三大操作系統(tǒng)都可用 5、國(guó)人開(kāi)源項(xiàng)目,現(xiàn)在在github上很熱門(mén)缺點(diǎn):體積太大。 寫(xiě)個(gè)hello wold,嗯,20M以上。試了不少壓縮方法,最少的也要17M以上,頭痛有道詞典前陣子也開(kāi)源了類(lèi)似項(xiàng):叫有道hex,但我比較看好node-webkit,社區(qū)更活躍更成熟。因?yàn)樽约菏荘HPer,自然是寫(xiě)PHP才夠酸爽,于是又在想其它解決方案。有沒(méi)有一個(gè)綠色的php web server軟件呢,這樣可以把軟件做成綠色版,不用特意去安裝apache nginx之類(lèi)的東西。功夫不負(fù)有心人,找到了一個(gè)叫QuickPHP的好東西,作者本意是想做個(gè)方便快速調(diào)式PHP腳本的工具,歪打正著,收下了。研究了一會(huì),發(fā)現(xiàn)是delphi寫(xiě)的軟件,用exescope處理下,修改幾處文字和菜單,盡量不顯示出這貨是QuickPHP再用C++邊學(xué)邊開(kāi)發(fā),弄個(gè)簡(jiǎn)易的瀏覽器,其實(shí)就是生成一個(gè)窗體,里弄個(gè)IE控件上去。啟動(dòng)窗體的時(shí)候,用C代碼啟動(dòng)QuickPHP,然后隱藏QuickPHP的窗體。(這里還有個(gè)問(wèn)題沒(méi)解決,否則就比較完美了,最小化后,隱藏托管欄上的圖標(biāo)很麻煩,winxp和win7處理方法還不怎么一樣,自己C能力太差,先放棄優(yōu)化)折騰兩天,成果截圖運(yùn)行 localphp.exe可以看到效果其中php.ini和ext目錄非必須,為了使用一些PHP擴(kuò)展才加上除掉非必要的擴(kuò)展目錄(ext),剩下的文件打包壓縮完就小幾M,還算滿(mǎn)意demo中的功能利用了js的異步請(qǐng)求,達(dá)到無(wú)刷新操作。當(dāng)然你還可以?xún)?yōu)化css樣式、禁止js報(bào)錯(cuò)、禁止復(fù)制文字、禁止右鍵菜單等手段讓它看去更像客戶(hù)端本身php就有很多可以控制操作系統(tǒng)的函數(shù),再加上可以用exec()執(zhí)行命令行代碼,所以PHP能做的事情就很多了。除了以上提到的PHP能做的事,其實(shí)還是很想讓PHP能調(diào)用系統(tǒng)里的dll文件,那就牛逼了。想像一下,用PHP找旺旺句柄、呼出旺旺聊友窗口、自動(dòng)發(fā)送消息給旺旺好友,多美麗的場(chǎng)景...找了半天,發(fā)現(xiàn)兩個(gè)擴(kuò)展php_w32api.dll和php_ffi.dll,可惜好像都沒(méi)有人維護(hù)了,新版的php都不能用。有興趣有能力的同學(xué),可以到php官方去找,優(yōu)化一下,編譯一份給偶用,萬(wàn)分感謝??偨Y(jié)一下,在這幾天實(shí)現(xiàn)想法的過(guò)程中,受益頗多: 1、PHP居然只要一個(gè)php5ts.dll就可以運(yùn)行,還有sapi是什么 2、C/C++其實(shí)也不是那么可怕,學(xué)進(jìn)去還是挺有意思的3、辦法總比困難多接下來(lái)想完善兩塊:第一、徹底隱藏web server服務(wù)器,即那個(gè)QuickPHP 或 者自己做個(gè)web server第二、完成用WEB控制旺旺發(fā)送消息功能。思路可以是 1、用PHP的擴(kuò)展(如上面提到的w32api和ffi)來(lái)調(diào)用系統(tǒng)dll; 2、自己寫(xiě)PHP擴(kuò)展,在擴(kuò)展里實(shí)現(xiàn)發(fā)送旺旺消息功能; 3、在主窗體中實(shí)現(xiàn)發(fā)送旺旺消息,通過(guò)某種機(jī)制讓PHP通知到C============================了解C的基礎(chǔ)上趁熱打鐵又看了深入了解PHP內(nèi)核的相關(guān)文章,感覺(jué)自己進(jìn)入了一個(gè)全新的世界,和大牛們的差距不是一點(diǎn)點(diǎn),加油吧。 《web應(yīng)用程序開(kāi)發(fā)》實(shí)驗(yàn)教學(xué)大綱 課程代碼: 課程性質(zhì): 課程分類(lèi):專(zhuān)業(yè)選修課 實(shí)驗(yàn)學(xué)時(shí):32學(xué)時(shí) 適用專(zhuān)業(yè):計(jì)算機(jī)網(wǎng)絡(luò)技術(shù) 開(kāi)課單位:數(shù)學(xué)與信息技術(shù)分院 教材與主要參考資料: 教 材:《ASP.NET程序設(shè)計(jì)》,尚俊杰,清華大學(xué)出版社 參 考 書(shū): 《WEB程序設(shè)計(jì)技術(shù)---ASP.NET》, 秦學(xué)禮,清華大學(xué)出版社 《ASP.NET簡(jiǎn)明教程》,金雪云,清華大學(xué)出版社 《ASP.NET程序設(shè)計(jì)及應(yīng)用》,蘇英如,中國(guó)水利水電出版社,2006.4 實(shí)驗(yàn)教學(xué)目標(biāo) 《web應(yīng)用程序開(kāi)發(fā)》實(shí)訓(xùn)是教學(xué)的一個(gè)必要組成部分,不屬于單獨(dú)的實(shí)驗(yàn)課程。通過(guò)理論教學(xué)和實(shí)驗(yàn)等環(huán)節(jié)的教學(xué),使學(xué)生加深對(duì)教學(xué)內(nèi)容的理解與認(rèn)識(shí),培養(yǎng)學(xué)生的網(wǎng)絡(luò)程序設(shè)計(jì)、調(diào)試和動(dòng)態(tài)頁(yè)面制作的能力。 主要儀器設(shè)備名稱(chēng)(軟件名稱(chēng)及安裝環(huán)境): Windows XP +IIS(Internet服務(wù)管理器) 實(shí)驗(yàn)基本要求 《web應(yīng)用程序開(kāi)發(fā)》的實(shí)驗(yàn)教學(xué)主要以上機(jī)編程方式進(jìn)行,使學(xué)生掌握.NET框架結(jié)構(gòu)及如何搭建運(yùn)行環(huán)境;掌握VB.NET程序設(shè)計(jì)語(yǔ)言基礎(chǔ);掌握HTML服務(wù)器控件和Web服務(wù)器控件的使用;掌握Request、Response等重要的內(nèi)部對(duì)象的基本知識(shí)和基本方法; 掌握數(shù)據(jù)庫(kù)的基礎(chǔ)知識(shí)和SQL語(yǔ)言,能利用ASP.NET進(jìn)行數(shù)據(jù)庫(kù)程序設(shè)計(jì);掌握對(duì)文件和文件夾操作的基本方法;掌握利用隱藏代碼和業(yè)務(wù)對(duì)象實(shí)現(xiàn)程序代碼和HTML代碼分離;了解.NET的最新特性Web服務(wù); 掌握配置Global.asax、web.Config文件和網(wǎng)絡(luò)安全、使用緩存、調(diào)試程序等高級(jí)應(yīng)用。 實(shí)驗(yàn)項(xiàng)目設(shè)置、內(nèi)容學(xué)及學(xué)時(shí)分配建議 實(shí)驗(yàn)項(xiàng)目:ASP.NET的運(yùn)行環(huán)境的安裝和配置 建議學(xué)時(shí):2 實(shí)驗(yàn)?zāi)康模赫莆誂SP.NET運(yùn)行環(huán)境的安裝;熟悉ASP.NET應(yīng)用程序的配置;掌握Web頁(yè)的發(fā)布。實(shí)驗(yàn)內(nèi)容: 1、搭建 ASP.NET 的運(yùn)行環(huán)境; 2、利用 EditPlus 或記事本等工具開(kāi)發(fā)第一個(gè)簡(jiǎn)單的 ASP.NET; 3、建立第一個(gè)應(yīng)用程序。 實(shí)驗(yàn)項(xiàng)目:VB.NET編程 建議學(xué)時(shí):4 實(shí)驗(yàn)?zāi)康模赫莆誚B.NET的數(shù)據(jù)類(lèi)型,以及變量、常量的定義;掌握VB.NET的條件語(yǔ)句、循環(huán)語(yǔ)句的使用;掌握VB.NET的過(guò)程和函數(shù);掌握VB.NET類(lèi)的屬性和方法的使用。實(shí)驗(yàn)內(nèi)容: 1、字符串、數(shù)字、日期等數(shù)據(jù)的使用; 2、有關(guān)函數(shù)、運(yùn)算符的使用方法。 實(shí)驗(yàn)項(xiàng)目:使服務(wù)器控件的應(yīng)用 建議學(xué)時(shí):6 實(shí)驗(yàn)?zāi)康模菏煜SP.NET服務(wù)器控件的屬性和方法;掌握服務(wù)器控件中驗(yàn)證控件的使用。 實(shí)驗(yàn)內(nèi)容:使用驗(yàn)證控件實(shí)現(xiàn)用戶(hù)注冊(cè) 實(shí)驗(yàn)項(xiàng)目:內(nèi)部對(duì)象的應(yīng)用 建議學(xué)時(shí):6 實(shí)驗(yàn)?zāi)康模菏煜ず土私釧SP.NET的內(nèi)置對(duì)象request、response、application、session、server、cookies。實(shí)驗(yàn)內(nèi)容: 1、ASP.NET的內(nèi)部對(duì)象Page, Request, Reponse; 2、ASP.NET的內(nèi)部對(duì)Cookie,Application,Server,Session; 3、編寫(xiě)郵件發(fā)送程序。實(shí)驗(yàn)項(xiàng)目:數(shù)據(jù)庫(kù)編程 建議學(xué)時(shí):10 實(shí)驗(yàn)?zāi)康模赫莆諗?shù)據(jù)庫(kù)的建立基本操作; 掌握ASP.NET中數(shù)據(jù)庫(kù)的連接方法;熟悉SQL語(yǔ)句;掌握ASP.NET中數(shù)據(jù)庫(kù)編程。實(shí)驗(yàn)內(nèi)容: 1、ADO.NET中連接SqlConnection,適配器SqlAdapator,命令SqlCommand,數(shù)據(jù)集DataSet等類(lèi)的作用; 2、ADO.NET檢索數(shù)據(jù)、新增、刪除數(shù)據(jù)的方法; 3、DataGrid等顯示控件的使用方法; 4、實(shí)現(xiàn)用戶(hù)注冊(cè)、登錄和用戶(hù)信息管理 實(shí)驗(yàn)項(xiàng)目:文件操作 建議學(xué)時(shí):2 實(shí)驗(yàn)?zāi)康模赫莆瘴募到y(tǒng)編程。實(shí)驗(yàn)內(nèi)容:編寫(xiě)網(wǎng)頁(yè)計(jì)數(shù)器程序 實(shí)驗(yàn)項(xiàng)目:配置Global.asax 文件和Web.config文件 建議學(xué)時(shí):2 實(shí)驗(yàn)?zāi)康模赫莆諏?duì)Global.asax 文件和Web.config文件的配置。實(shí)驗(yàn)內(nèi)容: 1、配置 Global.asax 和 Web.Config 文件的基本方法; 2、網(wǎng)絡(luò)安全綜合示例。 實(shí)驗(yàn)考核: 要求學(xué)生完成全部教學(xué)環(huán)節(jié)(包括上課、實(shí)驗(yàn)、作業(yè)等)之后才能參加考試。 ①考試形式:無(wú)紙化考試,實(shí)驗(yàn)課考試。 ②評(píng)卷標(biāo)準(zhǔn):平時(shí)成績(jī)(。 20%)+實(shí)驗(yàn)(40%)+大作業(yè)(40%) 摘要 隨著互連網(wǎng)的規(guī)模飛速發(fā)展和網(wǎng)絡(luò)編程技術(shù)的進(jìn)步,網(wǎng)絡(luò)已經(jīng)在社會(huì)的很多領(lǐng)域得到了應(yīng)用,如:遠(yuǎn)程會(huì)議、辦公自動(dòng)化、電子銀行,信息高速公路、企業(yè)內(nèi)部網(wǎng)、遠(yuǎn)程教育等。因此掌握一門(mén)主流網(wǎng)絡(luò)開(kāi)發(fā)工具已經(jīng)變的很重要,而在這些網(wǎng)絡(luò)開(kāi)發(fā)工具中,Microsoft推出的ASP技術(shù)無(wú)疑是其中的佼佼者。我的畢業(yè)課題就是利用ASP技術(shù)和WEB數(shù)據(jù)庫(kù)為現(xiàn)代教育中心開(kāi)發(fā)一個(gè)大學(xué)英語(yǔ)教學(xué)網(wǎng)站。 大學(xué)英語(yǔ)網(wǎng)站中主要包括在線聽(tīng)力練習(xí)、寫(xiě)作欣賞、英語(yǔ)交流、在線測(cè)試、答疑解惑、登陸注冊(cè)、后臺(tái)管理等幾個(gè)欄目,這些都是我們根據(jù)大學(xué)生學(xué)習(xí)英語(yǔ)知識(shí)和過(guò)英語(yǔ)四、六級(jí)的需要而設(shè)立的。 這篇文章介紹了本網(wǎng)站的設(shè)計(jì)開(kāi)發(fā)過(guò)程,主要包括系統(tǒng)的軟硬件環(huán)境、開(kāi)發(fā)工具、系統(tǒng)分析、詳細(xì)設(shè)計(jì)以及測(cè)試等詳細(xì)的過(guò)程。歡迎大家指正。 關(guān)鍵詞:信息高速公路;企業(yè)內(nèi)部網(wǎng);ASP; Abstract With the progress of development and network programming technology at full speed of the scale of Internet, The network has already got application in a lot of fields of the society, for instance: Long-range meeting, office automation , electronic bank, information superhighway, Intranet , teleeducation,etc.inside enterprises.Know one major network very much important, In these network developing instruments, ASP technology that Microsoft puts out is undoubtedly the outstanding person among them.My graduation subject is to utilize ASP technology and WEB data base to develop Englishes teaching website of a university for the modern education centre.University English website mainly including online hearing practise, Writing appreciation, English exchange, test, answer questions and explain the puzzle, land registration, back-stage management odd columns online, All these it is we that study English knowledge and pass according to university student that need of English Test(Band 4 and 6)set up.This article has recommended the design of this website to develop the course, Mainly, soft hardware environment, developing instrument, network analysis, design in detail and detailed course of testing etc.of system.Welcome everybody to make a comment.Key word:information superhighway;Intranet;ASP 目 錄 第一章 概述 1 1.1 題目的來(lái)源、目的、及意義 1 1.2 系統(tǒng)開(kāi)發(fā)的軟硬件環(huán)境 2 第二章 開(kāi)發(fā)工具和開(kāi)發(fā)方法 3 2.1 Web數(shù)據(jù)庫(kù)介紹 3 2.2 SQL概述 4 2.3 SQL Server2000的功能與特性 4 2.4 Visual InterDev 6.0簡(jiǎn)介 5 2.5 ASP性能概述 6 第三章 可行性研究 9 3.1 可行性研究任務(wù) 9 3.2 該任務(wù)的可行性 9 第四章 需求分析 11 4.1 需求的任務(wù)和目標(biāo) 11 4.2 本軟件的需求分析 11 第五章 總體設(shè)計(jì) 13 5.1 系統(tǒng)設(shè)計(jì) 13 5.2 結(jié)構(gòu)設(shè)計(jì) 14 5.3 系統(tǒng)的總體結(jié)構(gòu) 14 5.4 模塊的劃分 15 5.5 典型功能模塊的結(jié)構(gòu)和功能 15 第六章 詳細(xì)設(shè)計(jì) 17 6.1 數(shù)據(jù)庫(kù)設(shè)計(jì) 17 6.2創(chuàng)建和配置ODBC數(shù)據(jù)源 18 6.3部分頁(yè)面和流程圖 18 第七章 編碼和測(cè)試 23 7.1 關(guān)于編碼 23 7.2 測(cè)試 26 第八章 總結(jié) 28 參考文獻(xiàn) 29 致 謝 38
“;echo ”Response :
“.htmlspecialchars($client->__getLastResponse()).”
“;第二篇:《web應(yīng)用程序開(kāi)發(fā)》(網(wǎng)絡(luò)技術(shù)專(zhuān)業(yè))教學(xué)大綱
第三篇:PHP程序員開(kāi)發(fā)win32應(yīng)用程序之夢(mèng)
第四篇:《web應(yīng)用程序開(kāi)發(fā)》(網(wǎng)絡(luò)技術(shù)專(zhuān)業(yè))實(shí)驗(yàn)教學(xué)大綱
第五篇:利用ASP和WEB數(shù)據(jù)庫(kù),開(kāi)發(fā)大學(xué)英語(yǔ)教學(xué)網(wǎng)站