有元件上傳方式請右鍵"FyUpload.sct"註冊,然後可以使用:
Server.CreateObject("Rimifon.Upload")
創建物件。
無元件上傳方式請使用GetObject("script:" + 元件位址)
建立對象,元件位址為硬碟絕對路徑,也可以使用http完整路徑。
==============================================
屬性和方法說明:
設定頁面字元編碼:Upload.Charset = "UTF-8" //預設為gb2312編碼。
檔案大小限制:Upload.MaxSize = 1024 * 512 //設定上傳大小不超過512 kb,參數為零時不限制上傳檔案大小(預設為0)。
文件類型限制:Upload.Filter = "rar|zip|txt|gif|jpg|bmp|htm|html|swf|mht"; //(預設值)設定允許上傳的文檔類型,不限制上傳文件類型則使用空值。
取得上傳檔案的用戶端路徑:Upload.Field.輸入框名稱.FilePath
取得上傳檔案的檔案名稱:Upload.Field.輸入框名稱.SourceName
取得上傳檔案後儲存的檔案名稱:Upload.Field.輸入框名稱.FileName
取得上傳檔案的MimeType:Upload.Field.輸入框名稱.FileType
取得上傳檔案實際大小:Upload.Field.輸入框名稱.FileSize
取得上傳檔案的受限資訊:Upload.Field.輸入框名稱.Message
取得表單資料:Upload.Field.輸入框名稱.Value //如果是檔案則傳回檔案的Unicode編碼內容指定上傳緩衝區大小並讀取上傳資料:Upload.ReadForm(緩衝大小[bytes], 參數二) //預設為全部緩衝,建議在200k以下(可解決2003無法上傳大檔案的問題);提供參數二可為上傳產生進度條的Application資料。
儲存檔案到指定目錄:Upload.SaveFile("儲存目錄") //預設為目前目錄
=========================================================================================================================================================================
] //www.fengyun.org/Test/NetDisk
普通示範程式碼如下:
< %@language=javascript%><html><head >
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<title>風雲JS上傳元件</title><%
var Upload,Info,undefined;
if(Request.ServerVariables("Request_Method") == "POST")
{
//Upload = Server.CreateObject("Rimifon.Upload");
Upload = GetObject("script:http://www.zope.org/Members/Rimifon/FyUpload.sct#Upload");
Upload.MaxSize = 1024 * 512;
Upload.ReadForm(204800);
Upload.SaveFile(".");
var field = new Array;
field.push("允許上傳的文檔:" + (Upload.Filter?Upload.Filter:"所有文檔"));
field.push("單一檔案最大值:" + (Upload.MaxSize?(Upload.MaxSize/1024/1024).toFixed(1)+" Mb":"不限檔案大小"));
field.push("=============================================== ===============");
for(var x in Upload.Field)
{
if(Upload.Field[x].FilePath)
{
field.push(x+":" + (Upload.Field[x].Message?
Upload.Field[x].FilePath+"(" + Upload.Field[x].Message + ")":
"<a target=_blank href=" + Upload.Field[x].FileName + ">" +
Upload.Field[x].FilePath + "</a> (" + Upload.Field[x].FileSize + " bytes)"));
}
else
{
field.push(x+":"+Upload.Field[x].Value);
}
}
Upload.Dispose();
Upload = undefined;
Info = field.join("<br>");
}%></head><body>
<font color="red"><%=Info%></font>
<form method=post enctype="multipart/form-data">
field:<input name=field value=testString><br>
upFile1:<input name="upFile1" type="file"><br>
cnfield:<input name=cnfield value=一中文測驗><br>
upFile2:<input name="upFile2" type="file"><br>
otherfield:<input name=otherfield value=dsihf83><br>
<input type="submit"></form></body></html>
請注意:在下面的附件中,元件未必是最新的,最新元件的位址是: (文件以utf-8編碼儲存)
http://www.zope.org/Members/Rimifon/FyUpload.sct