Web數(shù)據(jù)庫存基礎教程7_第1頁
Web數(shù)據(jù)庫存基礎教程7_第2頁
Web數(shù)據(jù)庫存基礎教程7_第3頁
Web數(shù)據(jù)庫存基礎教程7_第4頁
Web數(shù)據(jù)庫存基礎教程7_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

7應用內(nèi)、外組件內(nèi)容簡介:本章將重點學習內(nèi)置組件FileAccess。掌握使用該組件對文件夾、文件的操作應用,一般掌握其他組件(AdRotator、CDONTS、BrowserCapabilities等)的應用。7-1創(chuàng)建對象實例可以使用兩種方法創(chuàng)建腳本對象的實例,一種是ASPServer對象提供的CreateObject方法,如:<%

DimobjInst

SetobjInst=Server.CreateObject("ADODB.Connection")%>另一種是<OBJECT>元素。使用HTML的<OBJECT>元素,通過增加RUNAT參數(shù),并指定其值為“SERVER”,可在服務器上創(chuàng)建一個對象實例,如:<OBJECTID="objInst"RUNAT="SERVER"PROGID="Inst.Object"><PARAMNAME="pname1"VALUE="value1"><PARAMNAME="pname2"VALUE="value2"></OBJECT>7-2應用FileAccess組件組件是包含在動態(tài)鏈接庫(DLL)或可執(zhí)行文件中的通過特定接口提供特定服務的可執(zhí)行代碼,它可提供一個或多個對象以及對象的方法和屬性。被封裝后用于完成應用程序的某些特定功能。ASP內(nèi)置組件功能非常強大、內(nèi)容很豐富(與內(nèi)置對象一樣也有集合、屬性和方法等),使用Microsoft的IIS和ASP,就已包含了ASP的數(shù)個已安裝和可安裝的內(nèi)置組件(因版本不同,含有的組件也可能不同)。表7-1是常用的ASP內(nèi)置組件,表7-2中ASP的腳本組件,它們同屬于ASP內(nèi)置組件。7-2-1概述表7-1常用的ASP內(nèi)置組件名稱功能AdRotator廣告翻轉(zhuǎn)器組件,可以交替地顯示圖像和文字,并可以通過圖像鏈接到另一個URLBrowserCapabilities瀏覽器描述組件,可以檢查所使用的瀏覽器,根據(jù)其特性以決定傳送給瀏覽器的內(nèi)容ContentLinker內(nèi)容連接組件,通過應用程序的ASP文件,提供邏輯導航的工具,而不需要文件中的URL參考??梢院芊奖愕厥褂靡粋€文檔來管理超鏈接、上一頁、下一頁等鏈接功能ContentRotator內(nèi)容翻轉(zhuǎn)器組件,讓HTML內(nèi)容輪流顯示在網(wǎng)頁上Counters計數(shù)器組件,用于創(chuàng)建、存儲、遞增或檢索任意數(shù)量的獨立計數(shù)器,提供任何種類數(shù)據(jù)的統(tǒng)計E-mail(CDONTS)

發(fā)送E-mail給用戶,全稱是CollaborationDataObjectsforWindowsNTServerPageCounter訪客計數(shù)器組件,記錄來訪者打開頁面的次數(shù)PermissionChecker允許檢查組件,檢查用戶是否有權(quán)存取某個文件ActiveXDataObjects用ASP訪問數(shù)據(jù)庫的組件(第8章介紹)表7-2ASP的腳本組件名稱功能Dictionary用內(nèi)置函數(shù)來完成大量數(shù)據(jù)的存儲和處理等基本任務,提供一種存儲值的有效方式FileAccess文件存取組件,提供讀寫服務器文件的功能??扇〉貌⑿薷膬Υ嬖谖募械男畔?-2-2操作文件夾操作文件夾、文件等,使用的是FileAccess服務器組件。FileAccess組件是一個腳本組件(ScriptingComponents),包含了處理文件系統(tǒng)的所有基本方法。操作時我們不能直接訪問FileAccess服務器組件的集合、屬性和方法,而要用Server對象的CreateObject方法先創(chuàng)建一個FileAccess服務器組件的對象實例(ObjectInstance),然后再通過此對象實例去訪問集合、屬性和方法。若要訪問服務器端的文件夾或文件,必須使用Server.MapPath方法先將文件夾或文件的虛擬路徑轉(zhuǎn)換為實際路徑。FileAccess服務器組件的對象、集合等,請用戶參見附錄。例7.1例7.1創(chuàng)建MyFolder1的文件夾(L7-1.asp)。<HTML><TITLE>創(chuàng)建文件夾</TITLE><BODY><%DimobjFSO'聲明名為objFSO的變量,用于存放對象實例

SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfNotobjFSO.FolderExists(Server.MapPath("\WebBasic\Ch7\MyFolder1"))ThenobjFSO.CreateFolder(Server.MapPath("\WebBasic\Ch7\MyFolder1"))Response.Write"<B>創(chuàng)建的新文件夾實際路徑是:</B>"&_Server.MapPath("\WebBasic\Ch7\MyFolder1")ElseResponse.Write"MyFolder1文件夾已經(jīng)存在!"

EndIfSetobjFSO=Nothing'釋放FileSystemObject對象%></BODY></HTML>例7.2例7.2移動文件夾MyFolder1,重命名為MyFolder2(L7-2.asp)。<HTML><TITLE>移動文件夾并重命名</TITLE><BODY><%DimobjFSO

SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FolderExists(Server.MapPath("\WebBasic\Ch7\MyFolder1"))ThenobjFSO.MoveFolderServer.MapPath("\WebBasic\Ch7\MyFolder1"),_Server.MapPath("..\MyFolder2")Response.Write"已將MyFolder1文件夾移走,并重命名為:MyFolder2!"ElseResponse.Write"該路徑下沒有MyFolder1文件夾!"

EndIfSetobjFSO=Nothing%></BODY></HTML>例7.3例7.3利用Folder對象的Move方法移動文件夾,并重命名(L7-3.asp)。<HTML><TITLE>用Folder.Move方法移動文件夾并重命名</TITLE><BODY><%DimobjFSO,objFolder

SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FolderExists(Server.MapPath("MyFolder1"))ThenSetobjFolder=objFSO.GetFolder(Server.MapPath("MyFolder1"))objFolder.Move(Server.MapPath("..\MyFolder2"))Response.Write"已將MyFolder1文件夾移走,并重命名為:MyFolder2!"ElseResponse.Write"該路徑下沒有MyFolder1文件夾!"

EndIfSetobjFolder=Nothing'釋放Folder對象

SetobjFSO=Nothing'釋放FileSystemObject對象%></BODY></HTML>例7.4例7.4刪除指定的文件夾(L7-4.asp)。<HTML><TITLE>刪除文件夾</TITLE><BODY><%DimobjFSO

SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FolderExists(Server.MapPath("\WebBasic\Ch7\MyFolder1"))ThenobjFSO.DeleteFolderServer.MapPath("\WebBasic\Ch7\MyFolder1"),TrueResponse.Write"您所指定的MyFolder1文件夾已被刪除!"

ElseResponse.Write"此路徑下沒有MyFolder1文件夾!"

EndIfSetobjFSO=Nothing%></BODY></HTML>例7.5例7.5利用Folder對象的Delete方法刪除指定的文件夾(L7-5.asp)。<HTML><TITLE>用Folder.Delete刪除文件夾</TITLE><BODY><%DimobjFSO,objFolder

SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FolderExists(Server.MapPath("MyFolder1"))ThenSetobjFolder=objFSO.GetFolder(Server.MapPath("MyFolder1"))objFolder.Delete(True)Response.Write"您所指定的MyFolder1文件夾已被刪除!"

ElseResponse.Write"此路徑下沒有MyFolder1文件夾!"

EndIfSetobjFolder=NothingSetobjFSO=Nothing%></BODY></HTML>例7.6例7.6文件夾的復制(L7-6.asp)。<HTML><TITLE>復制文件夾</TITLE><BODY><%DimobjFSOSetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FolderExists(Server.MapPath("\WebBasic\Ch7\MyFolder1"))ThenobjFSO.CopyFolderServer.MapPath("\WebBasic\Ch7\MyFolder1"),_Server.MapPath("..\MyFolder2"),TrueResponse.Write"已將MyFolder1文件夾復制到指定目錄,并換名為:MyFolder2"ElseResponse.Write"此路徑下沒有MyFolder1文件夾!"

EndIfSetobjFSO=Nothing%></BODY></HTML>例7.7例7.7用Folder.Copy方法復制文件夾(L7-7.asp)。<HTML><TITLE>用Folder.Copy方法復制文件夾</TITLE><BODY><%DimobjFSO,objFolder

SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FolderExists(Server.MapPath("\WebBasic\Ch7\MyFolder1"))ThenSetobjFolder=objFSO.GetFolder(Server.MapPath("\WebBasic\Ch7\MyFolder1"))objFolder.CopyServer.MapPath("..\MyFolder2")Response.Write"已將MyFolder1文件夾復制到指定目錄,并換名為:MyFolder2"ElseResponse.Write"此路徑下沒有MyFolder1文件夾!"

EndIfSetobjFolder=Nothing'釋放Folder對象

SetobjFSO=Nothing'釋放FileSystemObject對象%></BODY></HTML>例7.8例7.8獲取指定文件夾的參數(shù)①(L7-8.asp),運行結(jié)果如圖7-1所示。<HTML><TITLE>獲取文件夾參數(shù)①</TITLE><BODY><%DimobjFSOSetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FolderExists(Server.MapPath("\WebBasic\Ch7"))ThenResponse.Write"父文件夾路徑為:"&_

objFSO.GetParentFolderName(Server.MapPath("\WebBasic\Ch7"))&"<BR>"Response.Write"特殊文件夾SystemFolder的路徑為:"&_

objFSO.GetSpecialFolder(SystemFolder)&"<BR>"Response.Write"特殊文件夾WindowsFolder的路徑為:"&_

objFSO.GetSpecialFolder(WindowsFolder)&"<BR>"Response.Write"特殊文件夾TemporaryFolder的路徑為:"&_

objFSO.GetSpecialFolder(TemporaryFolder)&"<BR>"ElseResponse.Write"所查找的文件夾不存在!"

EndIfSetobjFSO=Nothing%></BODY></HTML>例7.9例7.9獲取指定文件夾的參數(shù)②(L7-9.asp),運行結(jié)果如圖7-1所示。<HTML><TITLE>獲取文件夾參數(shù)②</TITLE><BODY><%DimobjFSO,objFolderSetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FolderExists(Server.MapPath("\WebBasic\Ch7"))ThenSetobjFolder=objFSO.GetFolder(Server.MapPath("\WebBasic\Ch7"))Response.Write"文件夾的名稱為:"&objFolder.Name&"<BR>"Response.Write"文件夾的屬性為:"&objFolder.Attributes&"<BR>"Response.Write"文件夾的大小為:"&objFolder.Size&"<BR>"Response.Write"文件夾的路徑為:"&objFolder.Path&"<BR>"Response.Write"文件夾的建立日期為:"&objFolder.DateCreated&"<BR>"ElseResponse.Write"所查找的文件夾不存在!"

EndIfSetobjFolder=NothingSetobjFSO=Nothing%></BODY></HTML>例7.10例7.10列出文件夾內(nèi)的所有子文件夾和文件(L7-10.asp)。<HTML><TITLE>列出文件夾和文件</TITLE><BODY><%DimobjFSO,objFolder,objFileSetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FolderExists(Server.MapPath("\WebBasic\Ch7"))ThenSetobjFolder=objFSO.GetFolder(Server.MapPath("\WebBasic\Ch7"))Response.Write"本文件夾下所含子文件夾有:<BR>"ForEachobjSubFolderinobjFolder.SubFoldersResponse.WriteobjSubFolder.Name&"<BR>"NextResponse.Write"<P>本文件夾下所含文件有:<BR>"ForEachobjFileinobjFolder.FilesResponse.WriteobjFile.Name&"<BR>"NextElseResponse.Write"所查找的文件夾不存在!"

EndIfSetobjFolder=NothingSetobjFSO=Nothing%></BODY></HTML>7-2-3操作文件例7.11創(chuàng)建MyFile1.asp文件(L7-11.asp)。<HTML><TITLE>創(chuàng)建MyFile1.asp文件</TITLE><BODY><%DimobjFSO

SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FileExists(Server.MapPath("\WebBasic\Ch7\MyFile1.asp"))ThenResponse.Write"MyFile1.asp文件已經(jīng)存在!"

ElseobjFSO.CreateTextFile(Server.MapPath("\WebBasic\Ch7\MyFile1.asp"))Response.Write"已在指定目錄下創(chuàng)建MyFile1.asp文件!"

EndIfSetobjFSO=Nothing%></BODY></HTML>例7.12例7.12文件名的移動和重命名(L7-12.asp)。01:<HTML>02:<TITLE>移動和重命名</TITLE>03:<BODY>04:<%05:DimobjFSO

06:SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")07:IfobjFSO.FileExists(Server.MapPath("\WebBasic\Ch7\MyFile1.asp"))Then08:IfobjFSO.FileExists(Server.MapPath("..\MyFile2.asp"))Then09:Response.Write"MyFile2.asp文件已經(jīng)存在!"10:Else11:objFSO.MoveFileServer.MapPath("\WebBasic\Ch7\MyFile1.asp"),_12:Server.MapPath("..\MyFile2.asp")13:Response.Write"已將MyFile1.asp文件移至指定目錄,并換名為:MyFile2"14:EndIf15:Else16:Response.Write"此目錄下沒有MyFile1.asp文件!"17:EndIf18:SetobjFSO=Nothing19:%>20:</BODY>21:</HTML>例7.13例7.13利用File對象的Copy方法復制文件(L7-13.asp)。01:<HTML>02:<TITLE>復制文件</TITLE>03:<BODY>04:<%05:DimobjFSO,objFile06:SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")07:IfobjFSO.FileExists(Server.MapPath("\WebBasic\Ch7\MyFile1.asp"))Then08:SetobjFile=objFSO.GetFile(Server.MapPath("\WebBasic\Ch7\MyFile1.asp"))09:objFile.CopyServer.MapPath("…\MyFile2.asp")10:Response.Write"已將MyFile1文件復制到指定目錄,并換名為:MyFile2.asp"11:Else12:Response.Write"此目錄下沒有MyFile1.asp文件!"13:EndIf14:SetobjFile=Nothing15:SetobjFSO=Nothing16:%>17:</BODY>18:</HTML>還可以利用File對象的Delete方法刪除文件,如將例7.13的If語句7~13行換成:

IfobjFSO.FileExists(Server.MapPath("\WebBasic\Ch7\MyFile1.asp"))ThenSetobjFile=objFSO.GetFile(Server.MapPath("\WebBasic\Ch7\MyFile1.asp"))objFile.Delete(True)Response.Write"MyFile1.asp文件已被刪除!"

ElseResponse.Write"此目錄下沒有MyFile1.asp文件!"

EndIf利用File對象的Move方法可以移動且對文件進行更名,將例7.13的If語句換成:

IfobjFSO.FileExists(Server.MapPath("\WebBasic\Ch7\MyFile1.asp"))ThenSetobjFile=objFSO.GetFile(Server.MapPath("\WebBasic\Ch7\MyFile1.asp"))objFile.Move(Server.MapPath("..\MyFile2.asp"))Response.Write"已將MyFile1.asp文件復制到指定目錄,并換名為:MyFile2"ElseResponse.Write"此目錄下沒有MyFile1.asp文件!"

EndIf接上頁例7.14例7.14利用File對象的屬性獲取文件的各種參數(shù)(L7-14.asp)。運行結(jié)果如圖7-3所示。<HTML><TITLE>獲取文件的各種參數(shù)</TITLE><BODY><%DimobjFSO,objFileSetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FileExists(Server.MapPath("\WebBasic\Ch7\MyFile1.asp"))ThenSetobjFile=objFSO.GetFile(Server.MapPath("\WebBasic\Ch7\MyFile1.asp"))Response.Write"返回文件的屬性是:"&objFile.Attributes&"<BR>"Response.Write"返回文件的名稱是:"&objFile.Name&"<BR>"Response.Write"返回文件的路徑是:"&objFile.Path&"<BR>"Response.Write"返回文件的大小是:"&objFile.Size&"<BR>"Response.Write"返回文件的類型是:"&objFile.Type&"<BR>"Response.Write"返回文件的創(chuàng)建日期是:"&objFile.DateCreated&"<BR>"ElseResponse.Write"所訪問的文件不存在,無法返回參數(shù)信息!"

EndIfSetobjFile=Nothing'釋放File對象

SetobjFSO=Nothing'釋放FileSystemObject對象%></BODY></HTML>7-2-4讀、寫文件FileAccess組件提供了對文件處理的多種對象、方法、屬性等,通過它們的有機組合,我們可以選取一些方便、快捷的方案來處理我們所遇到的問題。例7.15

例7.15從給定文件(MyFile.txt)中每次讀取n+1個字符(L7-15.asp)。<HTML><TITLE>讀取字符①</TITLE><BODY><%DimobjFSO,objTS,Chars,nn=0SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")IfobjFSO.FileExists(Server.MapPath("\WebBasic\Ch7\MyFile.txt"))ThenSetobjTS=objFSO.OpenTextFile(Server.MapPath("MyFile.txt"),1)DoWhileNotobjTS.AtEndOfStream'判斷是否到達文件尾

Chars=objTS.Read(n)'每次讀取n個字符賦給字符串變量CharsResponse.WriteChars&"<BR>"'輸出Chars的值和強制換行標記

n=n+1LoopobjTS.Close'關閉打開的文件

ElseResponse.Write"此目錄下沒有MyFile.txt文件!"

EndIfSetobjTS=Nothing'釋放TextStream對象實例,即關閉打開的TextStream對象實例

SetobjFSO=Nothing'釋放FileSystemObject對象實例%></BODY></HTML>例7.16例7.16從給定文件(MyFile.txt)中每次讀取一行字符(L7-16.asp)。01:<HTML>02:<TITLE>讀取字符②</TITLE>03:<BODY>04:<%05:DimobjFSO,objTS,Lines06:DimI07:I=108:SetobjFSO=Server.CreateObject("Scripting.FileSystemObject")09:IfobjFSO.FileExists(Server.MapPath("\WebBasic\Ch7\MyFile.txt"))Then10:SetobjTS=objFSO.OpenTextFile(Server.MapPath("MyFile.txt"),1)11:DoWhileNotobjTS.AtEndOfStream'判斷是否到達文件尾12:Lines=objTS.ReadLine'讀取一行并賦給字符串變量Lines13:Response.WriteLines'輸出Lines的值14:Response.Write"<BR>"'輸出強制換行標記15:IfI>=5Then'若加上以下四句,結(jié)果為輸出5行16:ExitDo'包括空格行,并退出17:EndIf18:I=I+119:Loop20:objTS.Close'關閉打開的文件21:Else22:Response.Write"此目錄下沒有MyFile.txt文件!"23:EndIf24:SetobjTS=Nothing'釋放TextStream對象25:SetobjFSO=Nothing'釋放FileSystemObject對象26:%>27:</BODY>28:</HTML>例7.17例7.17利用TextStream對象提供的三種方法Write(string)、WriteLine(string)和WriteBlankLines(n)將字符寫入到文件中(L7-17.asp)。01:<HTML>02:<TITLE>將字符寫入文件</TITLE>03:<BODY>04:<%05:DimobjFSOs,objTSs06:SetobjFSOs=Server.CreateObject("Scripting.FileSystemObject")07:SetobjTSs=objFSOs.OpenTextFile(Server.MapPath("MyFile3.txt"),2,True)08:objTSs.Write("<CENTER>漁歌子</CENTER>")09:objTSs.WriteLine("<CENTER><B>張志和</B></CENTER>")10:objTSs.WriteBlankLines("1")11:objTSs.WriteLine("<CENTER>西塞山前白鷺飛,</CENTER>")12:objTSs.WriteLine("<CENTER>桃花流水鱖魚肥。</CENTER>")13:objTSs.WriteLine("<CENTER>青箬笠,綠蓑衣,</CENTER>")14:objTSs.WriteLine("<CENTER>斜風細雨不須歸。</CENTER>")15:objTSs.Close'關閉已打開的文件16:SetobjTSs=Nothing'釋放TextStream對象17:SetobjFSOs=Nothing'釋放FileSystemObject對象18:%>19:20:</BODY>21:</HTML>7-3內(nèi)置組件ASP內(nèi)置組件的常用部分由ASP/IIS安裝提供,其他的部分可由Web免費或有償提供。服務器端組件通常在自己的DLL或可執(zhí)行文件中實現(xiàn),一旦服務器安裝或注冊了該DLL文件,其提供的對象等就可以在ASP所支持的任何腳本語言中使用。組件與ASP環(huán)境的關系如圖7-6所示。圖7-6組件與ASP環(huán)境的關系7-4外置組件

ASP的內(nèi)置以象和內(nèi)置組件在安裝了ASP/IIS或其他服務器軟件后就可以直接使用。外置組件或稱為第三方組件(theThirdComponents),是使用VB、VC++、VFP等支持組件對象模型(COM)技術的語言編寫的供ASP調(diào)用的組件。應用語言編制ASP的外置組件,擴展了ASP的功能,使其幾乎達到了無所這能的境界。在廣袤的Internet世界里,有許多優(yōu)秀的ASP網(wǎng)站會提供一些免費或共享的源代碼外置組件,所以一些標準功能的ASP外置組件用戶無需自己開發(fā)。通常從Internet下載的組件都要注冊,注冊以后就像使用ASP的內(nèi)置組件一樣方便,也有屬性、方法等。注冊的方法一般是先將動態(tài)鏈接庫(如:AspMail.Dll)拷貝至服務呂系統(tǒng)目錄下(如:Windows2000的\WINNT\system32\intesrv\),再鍵入命令:

regser32AspMail.dll完成操作后,便可以使用該組件了。7-5組件應用7-5-1應用AdRotator組件AdRotator組件提供廣告隨機輪換選擇功能,簡化了按順序顯示每幅廣告的任務,可以輕松自動地添加新廣告。瀏覽者打開網(wǎng)而時,能隨機地看到廣告。程序員可以很容易地增加或更改廣告的超鏈接,使瀏覽者單擊廣告便可進入廣告客戶的Web站點。構(gòu)成一個廣告隨機輪換組件的文件通常含有:ADROT.DLL(通常位于\WINNT\system32\inetsrv下)、超鏈接處理文件和廣告數(shù)據(jù)庫(文本文件)例7.18a例7.18a超鏈接處理文件①(L7-18a.asp)。<HTML><TITLE>廣告隨機顯示</TITLE><%DimobjRand

SetobjRand=Server.CreateObject("MSWC.AdRotator")Response.WriteobjRand.GetAdvertisement("Random.txt")SetobjRand=Nothing%></HTML>例7.18b超鏈接處理文件②(L7-18b.asp)。<%MyURL=Request("URL")Response.RedirectMyURL%>廣告數(shù)據(jù)庫即文本文件(Random.txt):REDIRECTL7-18b.aspWIDTH600HEIGHT70BORDER1*Phot1.jpgFile1.htm祝賀上海申博成功!1Phot2.jpgFile2.htm2010相約上海!1Phot3.jpgFile3.htm乘磁懸浮,到上海!1

7-5-2應用CDONTS組件內(nèi)置組件CDONTS(CollaborationDataObjectsforWindowsNTServer)主要用于處理電子郵件,而收、發(fā)送E-mail是網(wǎng)站的基本功能之一。若用戶感覺CDONTS不好用,完全可以采用功能更強的外置組件。例7.19例7.19

發(fā)送Email郵件(L7-19.asp)。<%SubSendmail(fromaddress,toaddress,title,body)DimObjMyMail

SetObjMyMail=Server.CreateObject("CDONTS.Newmail")

ObjMyMail.From=fromaddress'發(fā)信人郵件地址

ObjMyMail.To=toaddress'收信人郵件地址

ObjMyMail.Subject=title'主題詞

ObjMyMail.Body=body'正文

ObjMyMail.Send'用CDONTS的Send方法發(fā)送郵件

SetObjMyMail=nothing'釋放對象

EndSub

Fromaddress=TRIM(Request.Form("fromaddress"))

Toaddress=TRIM(Request.Form("toaddress"))Title=TRIM(Request.Form("title"))Body=TRIM(Request.Form("body"))Iftoaddress<>""then

Sendmailfromaddress,toaddress,title,bodyEndif%><HTML><TITLE>發(fā)送Email</TITLE><BODY><FORMmethod="post"action=<%=Request.ServerVariables("script_name")%>><P>

收件人:<INPUTname="toaddress"type="text"size=25><P>

發(fā)件人:<INPUTname="fromaddress"type="text"size=25><P>

主題詞:<INPUTname="title"type="text"size=25><P><TEXTAREAname="body"cols=40rows=5></TEXTAREA><P><INPUTtype="submit"value="發(fā)送"></FORM></BODY></HTML>7-5-3應用BrowserCapabilities組件利用BrowserCapabilities組件可以為BrowserType對象創(chuàng)建對象實例(如:objBInf),以此來獲取客戶端瀏覽器的各種功能信息(如:瀏覽器的名稱、版本、平臺等是否支持表格、框架、Cookies、背景音樂、VBScript、JavaScript等),并將其返送服務器。例7.20例7.20截獲客戶端瀏覽器的各種信息(L7-20.asp)。<%DimobjBInf

SetobjBInf=Server.CreateObject("MSWC.BrowserType")%><HTML><TITLE>BrowserCapabilities組件</TITLE><H2>客戶端瀏覽器的數(shù)據(jù):</H2><BODY>

客戶端瀏覽器的名稱:<%=objBInf.Browser%><BR>

客戶端瀏覽器的版本:<%=objBInf.Version%><BR>

客戶端瀏覽器的平臺:<%=objBInf.Platform%><BR>

客戶端瀏覽器是否支持表格:<%=objBInf.Tables%><BR>

客戶端瀏覽器是否支持框架:<%=objBInf.Frames%><BR>

客戶端瀏覽器是否支持Cookies:<%=objBInf.Cookies%><BR>

客戶端瀏覽器是否支持背景音樂:<%=objBInf.BackgroundSounds%><BR>

客戶端瀏覽器是否支持VBScript:<%=objBInf.VBScript%><BR>

客戶端瀏覽器是否支持JavaScript:<%=objBInf.JavaScript%><BR>

客戶端瀏覽器是否支持JavaApplets:<%=objBInf.JavaApplets%><BR>

客戶端瀏覽器是否為BETA測試軟件:<%=objBInf.Beta%><BR>

客戶端瀏覽器是否支持ActiveXControls:<%=objBInf.ActiveXControls%><BR><%SetobjBInf=Nothing%></BODY></HTML>7-5-4應用Dictionary組件例7.21利用Dictionary組件輸出一組數(shù)據(jù)(L7-21.asp)。<HTML><TITLE>應用Dictionary組件</TITLE><BODY><%DimArray(5),name1,name2,name3,name4,name5Setname1=Server.CreateObject("Scripting.Dictionary")name1.Add"品名","主板"

name1.Add"型號","TUSI-M"name1.Add"價格","740元"

name1.Add"生產(chǎn)日期","08/09/02"

Setname2=Server.CreateObject("Scripting.Dictionary")name2.A

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論