DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> XML學習教程 >> XML詳解 >> XML技術上傳文件4
XML技術上傳文件4
編輯:XML詳解     

G>服務器端

以下代碼使用相同的對象提供服務器端的上傳處理功能。


< %@ LANGUAGE=VBScript% >
< % Option Explicit
Response.Expires = 0

' 定義變量和對象。
dim ado_stream
dim XML_dom
dim XML_file1

' 創建 Stream 對象
set ado_stream = Server.CreateObject("ADODB.Stream")
' 從Request對象創建 XMLDOM對象
set XML_dom = Server.CreateObject("MSXML2.DOMDocument")
XML_dom.load(request)
' 讀出包含二進制數據的節點
set XML_file1 = XML_dom.selectSingleNode("root/file1")

' 打開Stream對象,把數據存入其中
ado_stream.Type = 1 ' 1=adTypeBinary
ado_stream.open
ado_stream.Write XML_file1.nodeTypedValue
' 文件存盤
ado_stream.SaveToFile "c:\tmp\upload1.doc",2 ' 2=adSaveCreateOverWrite
ado_stream.close

' 銷毀對象
set ado_stream = Nothing
set XML_dom = Nothing
' 向浏覽器返回信息
Response.Write "Upload successful!"
% >

也可以使用Stream對象把數據放到數據庫的BLOB型字段中。

使用該方法的益處

不引起頁面轉換。
不需要專用組件。
可同時上傳多個文件。

  這段程序是純腳本寫成的,可以很容易的插入到其他代碼中,而不需要任何Html對象的配合。還可以把這個邏輯在任何支持COM標准的語言中實現。

系統安全考慮

  該方法只能使用於內部網絡,因為它需要IE5的安全級別設置為“低”。必須:

  允許腳本和ActiveX對象。該設置允許浏覽器執行類似 "myobj = new activexobject(...)"的 JScript語句;

  必須允許穿越域訪問數據源。這個設置允許在客戶端使用Stream對象。還必須在服務器和客戶端都安裝MS XML DOM 3.0 和MDAC 2.5 。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved