使用AspUpload組件上傳文件,使用范例代碼如下:
AspUpload組件上傳測試
<form method="POST" enctype="multipart/form-data" action="?act=upload">
<input type="file" size="40" name="file1">
<br>
<!--<input type="file" size="40" name="file2"><br>
<input type="file" size="40" name="file3"><br>-->
<br>其他表單項
<input type="text" name="uploadText" value="">
<br>
<br>
<input type="submit" value="上傳文件">
</form>
<% if request( "act")="upload" then AllowExt="jpg,png,gif,zip,rar,sql,txt,bak" On Error Resume Next ' 新建AspUpload對象
Set Upload = Server.CreateObject("Persits.Upload")
' 限制文件大小 Upload.SetMaxSize 4194304, True ' 上傳路徑--當前目錄下的test目錄
uploadDir = Server.MapPath("test")
' 嘗試創建路徑文件夾,true表示忽略目錄已存在錯誤 Upload.CreateDirectory uploadDir, true ' 先上傳文件至服務器內存
Count = Upload.Save()
' 檢測上傳錯誤 If Err.Number=8 Then Response.Write chinese2unicode( "錯誤: 文件過大!") Response.end Else If Err <>0 Then response.write chinese2unicode("發生錯誤:") response.write chinese2unicode(Err.Description) response.end End If End If 'Response.Write chinese2unicode("共 " & Count & " 個文件") & "
<br>
<br>" ' 指定一個上傳的表單文件 Set File = Upload.Files("file1") If Not File Is Nothing Then ' 獲取原本文件名 Filename = File.Filename ' 獲取文件擴展名 Fileext = File.Ext ' 檢測文件格式是否合格 ChkStr = ","&Lcase(AllowExt)&"," If Instr(ChkStr,","&right(Fileext,3)&",")
<=0 Then Response.Write chinese2unicode( "錯誤: 文件類型不正確!") response.write "<br>" response.write chinese2unicode( "只允許:"&AllowExt) ' 刪除內存中的臨時文件,以釋放內存或硬盤空間(還可用Copy、Move兩個指令)
File.Delete
' 檢測是否存在文件 elseif Upload.FileExists(uploadDir & "" & Filename) Then File.SaveAs uploadDir & "" & Filename Response.Write chinese2unicode( "已覆蓋存在相同文件名的文件: ") & File.Path ' 保存文件
else
File.SaveAs uploadDir & "" & Filename
Response.Write chinese2unicode("文件已保存到: ") & File.Path
end If
Else
Response.Write chinese2unicode("錯誤: 您并沒有選擇文件!")
End If
Response.Write "<br><br>"
' ' 批量上傳文件,去掉注釋即可用。
For Each File in Upload.Files
'File.SaveAs uploadDir & "" & File.FileName 'Response.Write chinese2unicode("文件已保存到: ") & File.Path & "<br>"
Next
'Response.Write "<br><br>Files:<br>" For Each File in Upload.Files 'Response.Write File.Name & "= " & File.Path & " (" & File.Size &" bytes)<br>"
Next
' ' 列出其他表單內容(必須執行Upload.Save()后才有效)
For Each Item in Upload.Form
Response.Write Item.Name & " = " & Item.Value & "<br>"
Next
'列出指定的表單內容 Response.Write "<br>"&chinese2unicode( "列出指定內容uploadText:"&Upload.Form( "uploadText").value) end if ' gb2312轉unicode,解決中文亂碼問題
function chinese2unicode(Str)
dim i
dim Str_one
dim Str_unicode
for i=1 to len(Str)
Str_one=Mid(Str,i,1)
Str_unicode=Str_unicode&chr(38)
Str_unicode=Str_unicode&chr(35)
Str_unicode=Str_unicode&chr(120)
Str_unicode=Str_unicode& Hex(ascw(Str_one))
Str_unicode=Str_unicode&chr(59)
next
Response.Write Str_unicode
end function
%>
