bar.asp
<%@EnableSessionState=False%> <% Response.Expires = -1 PID = Request("PID") TimeO = Request("to") Set UploadProgress = Server.CreateObject("Persits.UploadProgress") format = "<br><CENTER><b>正在上传,请耐心等待...</b></CENTER><br>%T%t%B3%T 速度:(%S/秒) 估计剩余时间:%R %r%U / %V(%P)%l%t" bar_content = UploadProgress.FormatProgress(PID, TimeO, "#00007F", format) If "" = bar_content Then %> <HTML> <HEAD> <TITLE>Upload Finished</TITLE> <SCRIPT LANGUAGE="JavaScript"> function CloseMe() { window.parent.close(); return true; } </SCRIPT> </HEAD> <BODY OnLoad="CloseMe()" BGCOLOR="menu"> </BODY> </HTML> <% Else '' Not finished yet %> <HTML> <HEAD> <meta HTTP-EQUIV="Refresh" CONTENT="1;URL=<% Response.Write Request.ServerVariables("URL") Response.Write "?to=" & TimeO & "&PID=" & PID %>"> <TITLE>Uploading Files...</TITLE> <style type="text/css"> body,td {font-family:Tahoma; font-size: 8pt } td.spread {font-size: 6pt; line-height:6pt } td.brick {font-size:6pt; height:12px} </style> </HEAD> <BODY BGCOLOR="menu" topmargin=0> <% = bar_content %> </BODY> </HTML> <% End If %>
fileconfig.asp
<% Dim UploadFilePath,UploadLimitSize,NotAllowfileext,BrowerFilePath UploadFilePath = year(now)&"_"&month(now)&"_"&day(now)&"/" ''文件上传路径
BrowerFilePath = "/"
UploadLimitSize = 1024*50 ''50M ''最大上传文件大小,单位为K
NotAllowfileext = "asp|cer|cdx|asa|htw|ida|idq|shtm|shtml|stm|printer|cgi|php|php4|cfm|aspx" ''不可以上传的文件类型
function CanUpload(Fileurl) Fileurl = lcase("|"& Mid(Fileurl, InstrRev(Fileurl, ".") + 1)& "|") NotAllowfileextstr = "|"&NotAllowfileext&"|" if instr(NotAllowfileextstr,Fileurl)>0 then CanUpload = false else CanUpload = true end if end function
Function CreateFolder(Filepath) Dim fso, f on error resume next Set fso = CreateObject("Scripting.FileSystemObject") if not fso.FolderExists(Filepath) then Set f = fso.CreateFolder(Filepath) set f = Nothing end if set fso = Nothing End Function %>
framebar.asp
<%@EnableSessionState=False%> <% Response.Expires = -1 %> <title>正在上传............</title> <style type=''text/css''>td {font-family:Tahoma; font-size: 8pt }</style> <BODY BGCOLOR="menu" scroll="NO" frameborder="NO" status="no" style="border:0px;"> <script language="JavaScript"> <!-- function Stopupload() { if (typeof(window.opener)!="undefined"){ try{ window.opener.document.execCommand("stop"); } catch(e){} } else if(typeof(window.dialogArguments)!="undefined"){ try{ window.dialogArguments.document.execCommand("stop"); } catch(e){} } window.close(); } //--> </script> <IFRAME src="bar.asp?PID=<%= Request("PID") & "&to=" & Request("to") %>" title="Uploading" noresize scrolling=no frameborder=0 framespacing=10 width=369 height=115></IFRAME> <TABLE BORDER="0" WIDTH="100%" cellpadding="2" cellspacing="0"> <TR><TD ALIGN="center"><button onclick="Stopupload()" style="font-size:12px;">取消上传</button> </TD></TR> </TABLE> </BODY> </HTML>
uploadfile.asp
<!--#include file=''fileconfig.asp''--> <!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <meta name="Keywords" content="51windows.Net"> <meta name="Author" content="haiwa"> <title>Upload -51windows.Net</title> <style> <!-- * {font:12px;} --> </style> </head> <body> <% On Error Resume Next Server.ScriptTimeOut=999999 if request("act")="upload" then dim folder,savepath savepath=Server.MapPath(UploadFilePath) CreateFolder(savepath) Set Upload=Server.CreateObject("Persits.Upload") Upload.SetMaxSize UploadLimitSize*1024, True Upload.OverwriteFiles = false if Request.QueryString("PID") = "" then Upload.ProgressID="010D60EB00C5AA4B" else Upload.ProgressID=Request.QueryString("PID") end if Count=Upload.Save(savepath) If Err.Number <> 0 Then Response.Write "<div style=""color:red;font-size:12px;"">出现错误: " & Err.Number & "、" & Err.Description &"<a href=""javascript:history.go(-1)"">重新上传</a></div>" End If If Err.Number = 8 Then Response.Write "<div style=""color:red;font-size:12px;"">你上传的文件超过限制("& UploadLimitSize/1024 &"M)<a href=""javascript:history.go(-1)"">重新上传</a></div>" response.end end if dim inputname dim size,rs_upfile For Each File in Upload.Files if not CanUpload(File.ext) then File.Delete response.write "<div style=""color:red;font-size:12px;"">"&file.filename &"("& file.size &") 格式不正确!<a href=""javascript:history.go(-1)"">重新上传</a></div>" else response.write "<div style=""color:green;font-size:12px;""><!-- "&file.filename &"("& file.size &") --> 上传成功"%><a href="javascript:history.go(-1)">重新上传</a></div><% end if next else %> <% dim SPid,PID,barref Set UploadProgress = Server.CreateObject("Persits.UploadProgress") SPid = UploadProgress.CreateProgressID() PID = "PID=" & SPid barref = "framebar.asp?to=10&" & PID %> <SCRIPT LANGUAGE="JavaScript"> function ShowProgress() { strAppVersion = navigator.appVersion; if (document.MyForm.FILE1.value != "") { if (strAppVersion.indexOf(''MSIE'') != -1 && strAppVersion.substr(strAppVersion.indexOf(''MSIE'')+5,1) > 4) { winstyle = "dialogWidth=375px; dialogHeight:175px; center:yes;status:no"; window.showModelessDialog(''<% = barref %>&b=IE'',window,winstyle); } else { window.open(''<% = barref %>&b=NN'','''',''width=370,height=165'', true); } } return true; } function chk() { if (MyForm.FILE1.value=="") { alert("请从硬盘选择你要上传的文件..."); return false; } } </SCRIPT> <FORM NAME="MyForm" method="post" ENCTYPE="multipart/form-data" ACTION="?<% = PID %>&act=upload" OnSubmit="return ShowProgress();"> <INPUT NAME="FILE1" TYPE="FILE" SIZE="16"> <input name="Submit" type="submit" value="上 传" onclick="return chk()"></FORM> <%end if%> </body> </html> |