ASP 檔案上傳 不須安裝元件就可上傳 (無組件上傳) ASP 檔案上傳 不須安裝元件就可上傳 (無組件上傳)
  ASP       ez      2012-08-24

ASP 並沒有內建上傳元件,只需要依照範例的方式,就不需要安裝上傳元件。

本地下載:upload_5xsoft

範例程式如下:

upfile.htm

<html>
<body>

<script>
function op()
{
	txt1 = document.text1.file1.value
	if( txt1 != "")
	{
		var dd = window.open("","new","width=500,height=500");
		dd.document.write("<center>預覽結果<hr color=#00bbff width=80%><img src=\"" + txt1 + "\"></center>");
		dd.document.close();
	}
}
</script>
<center>
 <p> </p>
<form method="post" action="upfile.asp" name="text1" enctype="multipart/form-data" >   
 <table border="1" bordercolor="#7B68EE" id="AutoNumber1" cellpadding="0" width="506" height="116">
    <tr>     
        <td bordercolor="#FFFFFF" width="498" height="1" colspan="2" style="border: 1pt solid #000000" align="center" bgcolor="#CCCCCC">     
        <b>簡 易 上 傳 測 試</b></td>    
    </tr>    
    <tr>
        <td bordercolor="#FFFFFF" width="78" height="32" style="border: 1pt solid #7B68EE">     
        <p align="center"><span lang="zh-tw"><a href="javascript:op()" style="color: #7B68EE"><font size="2">預覽</font></a></span>
        </td>    
        <td bordercolor="#FFFFFF" width="416" height="32" align="center">              
            <span lang="zh-tw">                                                                                                                                          
            <font size="2" color="#7B68EE">上傳圖片 </font></span><input type="file" name="file1" size="20" style="color: #4B0082; font-size: 10 pt; border: 1px solid #4B0082"> 
            <input type="submit" value="傳送" name="B1" style="font-size: 10 pt; color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> <input type="reset" value="重設" name="B2" style="color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8">   
         </td>    
    </tr>
    <tr>
        <td bordercolor="#FFFFFF" width="78" height="32" style="border: 1pt solid #7B68EE">     
        <p align="center"><span lang="zh-tw"><a href="javascript:op()" style="color: #7B68EE"><font size="2">預覽</font></a></span>
        </td>    
        <td bordercolor="#FFFFFF" width="416" height="32" align="center">              
            <span lang="zh-tw">                                                                                                                                          
            <font size="2" color="#7B68EE">上傳圖片 </font></span><input type="file" name="file2" size="20" style="color: #4B0082; font-size: 10 pt; border: 1px solid #4B0082"> 
            <input type="submit" value="傳送" name="B1" style="font-size: 10 pt; color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> <input type="reset" value="重設" name="B2" style="color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8">   
         </td>    
    </tr>
    <tr>
        <td bordercolor="#FFFFFF" width="78" height="32" style="border: 1pt solid #7B68EE">     
        <p align="center"><span lang="zh-tw"><a href="javascript:op()" style="color: #7B68EE"><font size="2">預覽</font></a></span>
        </td>    
        <td bordercolor="#FFFFFF" width="416" height="32" align="center">              
            <span lang="zh-tw">                                                                                                                                          
            <font size="2" color="#7B68EE">上傳圖片 </font></span><input type="file" name="file3" size="20" style="color: #4B0082; font-size: 10 pt; border: 1px solid #4B0082"> 
            <input type="submit" value="傳送" name="B1" style="font-size: 10 pt; color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> <input type="reset" value="重設" name="B2" style="color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8">   
         </td>    
    </tr>
    <tr>
        <td bordercolor="#FFFFFF" width="78" height="32" style="border: 1pt solid #7B68EE">     
        <p align="center"><span lang="zh-tw"><a href="javascript:op()" style="color: #7B68EE"><font size="2">預覽</font></a></span>
        </td>    
        <td bordercolor="#FFFFFF" width="416" height="32" align="center">              
            <span lang="zh-tw">                                                                                                                                          
            <font size="2" color="#7B68EE">上傳圖片 </font></span><input type="file" name="file4" size="20" style="color: #4B0082; font-size: 10 pt; border: 1px solid #4B0082"> 
            <input type="submit" value="傳送" name="B1" style="font-size: 10 pt; color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> <input type="reset" value="重設" name="B2" style="color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8">   
         </td>    
    </tr>
    <tr>     
        <td bordercolor="#FFFFFF" width="78" height="32" style="border: 1pt solid #7B68EE">     
        <p align="center"><span lang="zh-tw"><a href="javascript:op()" style="color: #7B68EE"><font size="2">預覽</font></a></span>
        </td>    
        <td bordercolor="#FFFFFF" width="416" height="32" align="center">              
            <span lang="zh-tw">                                                                                                                                          
            <font size="2" color="#7B68EE">上傳圖片 </font></span><input type="file" name="file5" size="20" style="color: #4B0082; font-size: 10 pt; border: 1px solid #4B0082"> 
            <input type="submit" value="傳送" name="B1" style="font-size: 10 pt; color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8"> <input type="reset" value="重設" name="B2" style="color: #4B0082; border: 1px solid #4B0082; background-color: #D4D0C8">   
         </td>    
    </tr>    
 </table>    
</form>      
</center>    

</body>    
</html>

upfile.asp

<!--#include FILE="upload_5xsoft.inc"-->
<% 
UpFilePath = "file/" '設定存放的目錄 

if right(UpFilePath,1) <> "/" then UpFilePath = UpFilePath & "/" '在目錄後加(\) 

UpFilePath = Server.MapPath(UpFilePath) '抓出完整主機路徑
Set fds = Server.CreateObject("Scripting.FileSystemObject")
'建立引用至FileSystemObject物件的fsObj物件變數

'利用FileSystemObject物件的FileExists方法檢查目錄是否存在(若發生錯誤,表示該主機不開放建立檔案寫入權限)
if Not fds.FolderExists(UpFilePath) then fds.CreateFolder(UpFilePath) '建立目錄指令

set fds = nothing '清除fsObj物件

FileMaxSize = 500000000 '設定檔案允許的大小 

Server.ScriptTimeOut = 10000 '設定檔案傳輸時間

FileType = ".jpg.gif.htm" '設定允許的副檔名 

set upload = new upload_5xsoft ''建立上傳對象 

dim formName,StrFile

for each formName in upload.file ''列出所有上傳的檔案 

 set file = upload.file(formName)  ''生成一個檔案對象 

 if file.FileSize > 0 then         ''如果 FileSize > 0 說明有檔案byte數 

	 if file.FileSize < FileMaxSize then ''如果未超過檔案大小限制 

		 if FileType <> "" then	'有限制上傳檔案類型 

			 if Instr(FileType,GetExtendName(file.FileName)) then 

				TypeFlag = 1        '檔案為允許的類型 

			 else 

				TypeFlag = 0		'檔案為不允許的類型 
			 	'session("txt") =  "不支援您所上傳的檔案類型﹕" 
				'session("file") =  session("file") & GetExtendName(file.FileName) 

			end if 

		 else 

		 TypeFlag = 1			'沒有限制上傳檔案類型 

		 end if 

		  if TypeFlag = 1 then  

				fname = file.FileName

				file.SaveAs UpFilePath & "\" & fname   ''儲存檔案 

				StrFile = StrFile & " " & fname

		  end if 

 	 else 

	 'session("txt") =  "檔案大小超出限制,您最多可以上傳 " & FileMaxSize & "byte的檔案" 

	 exit for 

	 end if 

 end if 

 set file = nothing 

 next 

 set upload = nothing  ''刪除此對象 

'此函數抓取副檔名 
function GetExtendName(FileName) 
	dim ExtName 
	ExtName = LCase(FileName) 
	ExtName = right(ExtName,3) 
	ExtName = right(ExtName,3-Instr(ExtName,".")) 
	GetExtendName = ExtName 
end function 
if fname <> Empty then
%>
<center><%=StrFile%> 上傳完畢</center>
<%       
else     
%>     
<script>alert('上傳圖片失敗,目前只允許使用<%=FileType%>檔案')</script>       
<%       
end if     
%>
<p align="center"><a href="upfile.htm">返回上傳頁</a></p>

標籤:   ASP

我要留言