upload.asp
来自「是个不错的文件代码,希望大家好好用,」· ASP 代码 · 共 334 行
ASP
334 行
<!-- #include file="inc/inc_syssite.asp" -->
<!-- #include File="inc/class_upfile.asp" -->
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Oblog4.0 文件上传</title>
</head>
<body>
<style type="text/css">
<!--
/* 全局 */
div,ul,ol,form {margin:0;padding:0;}
input {font-family:Arial,Helvetica,sans-serif;font-size:12px;height:20px;}
body {
text-align: center;
margin:0;
font-family:Arial,Helvetica,sans-serif;
font-size: 12px;
line-height: 150%;
word-break:break-all;
}
-->
</style>
<%
if not oblog.checkuserlogined() then
response.Write("登录后才能上传文件")
response.End()
end if
Dim tMode,rs,sysclass,subject
tMode=Request("tMode")
dim freesize,onesize,maxsize,enupload,upfiletype,re,ubb,isphoto
re=request.QueryString("re")
ubb=request.QueryString("ubb")
isphoto=cint(request.QueryString("isphoto"))
sysclass=request.QueryString("sysclass")
if sysclass<>"" then sysclass=clng(sysclass) else sysclass=0
subject=request.QueryString("subject")
if subject<>"" then subject=clng(subject) else subject=0
If oblog.l_Group(24,0)=-1 Then
enupload=0
Else
enupload=1
End If
upfiletype=oblog.l_Group(22,0)
'Response.Write upfiletype
'Response.End
onesize=oblog.l_Group(23,0)
maxsize=oblog.l_Group(24,0)
if enupload=0 then
response.Write("当前系统设置不允许上传文件")
response.End()
end if
'maxsize不限制大小,不进行检测
If maxsize<>0 Then
freesize=int(maxsize-oblog.l_uUpUsed/1024)
if freesize<=0 then
response.Write("<ul style='margin:0px;text-align: left;width:100%;'> 上传空间已满,不允许上传文件,请整理上传文档</ul></body></html>")
response.End()
end if
End If
Dim g_up_types,arr_g_up_types,str_g_up_types
Dim trs,ii
Set trs = oblog.execute ("SELECT g_up_types FROM oblog_groups WHERE groupid = " & oblog.l_uGroupId)
str_g_up_types = trs (0)
trs.close
Set trs=Nothing
If InStr(str_g_up_types,"|")>0 Then
arr_g_up_types=Split (str_g_up_types,"|")
For ii= 0 To UBound(arr_g_up_types)
g_up_types = g_up_types &"."& arr_g_up_types (ii)
Next
Else
g_up_types="." &str_g_up_types
End if
If Request("t")="1" Then
Upfile_Main()
Else
if tMode=1 then
Main_photo
else
Main()
end if
End If
Sub Main()
Dim PostRanNum
Randomize
PostRanNum = Int(900*rnd)+1000
Session("UploadCode") = Cstr(PostRanNum)
%>
<ul style="margin:0px;text-align: left;width:100%;">
<form name="myform" method="post" action="upload.asp?t=1&tMode=<%=tMode%>&re=<%=re%>&ubb=<%=ubb%>&isphoto=<%=isphoto%>" enctype="multipart/form-data">
<INPUT TYPE="hidden" NAME="UploadCode" value="<%=PostRanNum%>">
<input type="hidden" name="act" value="upload">
<%If Request("tmode")<>"9" Then%>
上传文件:
<%End If%>
<input type="file" name="uploadfile">
<input type="hidden" name="fname">
<input type="submit" name="Ok" value="上传" ><br />
<%If Request("tmode")<>"9" Then%>
剩余空间:<%
If maxsize=0 Then
Response.Write "不限制"
Else
Response.Write freesize& "KB"
End If
%> 单个文件:<%=onesize%>KB
<br />允许上传文件格式:<%=g_up_types%>
<%end if%>
</form>
</ul>
</body>
</html>
<%
End Sub
sub main_photo()
Dim PostRanNum,subjectid
Randomize
PostRanNum = Int(900*rnd)+1000
Session("UploadCode") = Cstr(PostRanNum)
%>
<ul style="margin:0px;text-align: left;width:100%;">
剩余空间:<%
If maxsize=0 Then
Response.Write "不限制"
Else
Response.Write freesize& "KB"
End If
%> 单个文件:<%=onesize%>KB
<form name="myform" method="post" action="upload.asp?t=1&tMode=<%=tMode%>&re=<%=re%>&ubb=<%=ubb%>&isphoto=<%=isphoto%>" enctype="multipart/form-data">
<INPUT TYPE="hidden" NAME="UploadCode" value="<%=PostRanNum%>">
<input type="hidden" name="act" value="upload">
文件:<input type="file" name="uploadfile" style="width:180px">
<span id="mup1"></span>
<span id="mup2"></span>
<span id="mup3"></span>
<span id="mup4"></span>
<span id="mup5"></span>
<input type="hidden" name="fname">
<br/><br />
<input type="submit" name="Ok" value="上传相片" >
<input type="button" value="增加上传个数" onClick="addf();">
</form>
</ul>
</body>
<script language="javascript">
var i=0;
function addf(){
i=i+1;
if (i<5){
document.all["mup"+i].innerHTML='<br />文件:<input type="file" name="uploadfile'+i+'" style="width:200px"> <input type="button" value="删除" onclick=delm("'+i+'");>';
}else{
i=i-1
alert("超过最多上传限制!")
}
}
function delm(m){
document.all["mup"+m].innerHTML='';
i=i-1;
}
</script>
</html>
<%
end sub
Sub Upfile_Main()
%>
<ul style="margin:0px;text-align: left;width:100%;">
<%
UploadFile
%>
</ul>
</body>
</html>
<%
End Sub
Sub UploadFile()
'If Not oblog.ChkPost Then
' Exit Sub
'End If
Server.ScriptTimeOut=9999999
' '-----------------------------------------------------------------------------
Dim Upload,FilePath,FormName,File,F_FileName,F_Viewname
dim DrawInfo
upfiletype=replace(upfiletype,"|",",")
if freesize<=onesize then onesize=freesize
if onesize<0 then onesize=0
if Request("tmode")="9" then onesize=50
if upload_dir<>"" then
FilePath=upload_dir
else
FilePath = oblog.l_udir&"/"&oblog.l_ufolder&"/upload"
end if
FilePath=CreatePath(FilePath)
If oblog.CacheCompont(12)="1" Then
DrawInfo = oblog.CacheCompont(13)
ElseIf oblog.CacheCompont(12)="2" Then
DrawInfo = oblog.CacheCompont(18)
Else
DrawInfo = ""
End If
If DrawInfo = "0" Then
DrawInfo = ""
oblog.CacheCompont(12) = 0
End If
Set Upload = New UpFile_Cls
if isphoto=1 then
Upload.UploadType = 0 '设置上传组件类型
else
Upload.UploadType = Cint(oblog.CacheCompont(11)) '设置上传组件类型
end if
Upload.UploadPath = FilePath '设置上传路径
Upload.MaxSize = Int(onesize) '单位 KB
Upload.InceptMaxFile = 8 '每次上传文件个数上限
Upload.InceptFileType = upfiletype '设置上传文件限制
Upload.RName = ""
Upload.ChkSessionName = "UploadCode"
if clng(oblog.CacheCompont(12))=1 or clng(oblog.CacheCompont(12))=2 then
Upload.PreviewType = 1 '设置预览图片组件类型
else
Upload.PreviewType = 999
end if
Upload.PreviewImageWidth = 130 '设置预览图片宽度
Upload.PreviewImageHeight = 100 '设置预览图片高度
Upload.DrawImageWidth = oblog.CacheCompont(22) '设置水印图片或文字区域宽度
Upload.DrawImageHeight = oblog.CacheCompont(21) '设置水印图片或文字区域高度
Upload.DrawGraph = oblog.CacheCompont(19) '设置水印透明度
Upload.DrawFontColor = oblog.CacheCompont(15) '设置水印文字颜色
Upload.DrawFontFamily = oblog.CacheCompont(16) '设置水印文字字体格式
Upload.DrawFontSize = oblog.CacheCompont(17) '设置水印文字字体大小
Upload.DrawFontBold = oblog.CacheCompont(17) '设置水印文字是否粗体
Upload.DrawInfo = DrawInfo '设置水印文字信息或图片信息
Upload.DrawType = oblog.CacheCompont(12) '0=不加载水印 ,1=加载水印文字,2=加载水印图片
Upload.DrawXYType = oblog.CacheCompont(23) '"0" =左上,"1"=左下,"2"=居中,"3"=右上,"4"=右下
Upload.DrawSizeType = 1 '"0"=固定缩小,"1"=等比例缩小
If oblog.CacheCompont(21)<>"" or oblog.CacheCompont(20)<>"0" Then
Upload.TransitionColor = oblog.CacheCompont(20) '透明度颜色设置
End If
'执行上传
Upload.SaveUpFile
If Upload.ErrCodes<>0 Then
'oblog.BuildFile(Server.mappath("err.txt"),"888")
Response.write "错误:"& Upload.Description & "[ <a href='upload.asp?re="&re&"&ubb="&ubb&"&isphoto="&isphoto&"&tMode="& tMode &"'>重新上传</a> ]"
Exit Sub
End If
If Upload.Count > 0 Then
For Each FormName In Upload.UploadFiles
Set File = Upload.UploadFiles(FormName)
F_FileName = FilePath & File.FileName
'创建预览及水印图片
If Upload.PreviewType<>999 and File.FileType=1 then
F_Viewname = FilePath&"pre" & Replace(File.FileName,File.FileExt,"") & "jpg"
'创建预览图片:Call CreateView(原始文件的路径,预览文件名及路径,原文件后缀)
Upload.CreateView F_FileName,F_Viewname,File.FileExt
End If
if re<>"no" then
select case file.filetype
case 1
If tMode="9" Then
'头像
Response.Write "<script>parent.oblogform.ico.value='" & F_FileName & "';parent.getImg();</script>"
ElseIf tMode="10" Then
Else
If tMode="1" Then
Response.Write "<script>parent.oblogform.log_pics.value+='" & F_FileName & "\n';</script>"
End if
if ubb="1" then
Response.Write "<script>parent.oblogform.ubbedit.value+='[IMG]"&F_FileName&"[/IMG]';</script>"
else
Response.Write "<script>parent.oblog_editors['edit'].setHTML(parent.oblog_editors['edit'].getHTML()+'<img src=""'+window.location.href.substring(0,window.location.href.lastIndexOf('/'))+'/"&F_FileName&"""/><br/>');</script>"
end if
if isphoto=2 then
Response.Write "<script>parent.oblogform.face.value='"&F_FileName&"';</script>"
end if
End If
case else
If tMode<>"10" Then
if ubb="1" then
Response.Write "<script>parent.oblogform.ubbedit.value+='[UPLOAD="&blogdir&F_FileName&"]"&File.FileName&"[/UPLOAD]';</script>"
else
If tMode<>9 Then
Response.Write "<script>parent.oblog_editors['edit'].setHTML(parent.oblog_editors['edit'].getHTML()+'<a href=""'+window.location.href.substring(0,window.location.href.lastIndexOf('/'))+'/"&F_FileName&""">" & F_FileName & "</a><br/>');</script>"
End If
end if
End If
end select
else
end if
oblog.execute("update oblog_user set user_upfiles_num=user_upfiles_num+1,user_upfiles_size=user_upfiles_size+"&File.FileSize&" where userid="&oblog.l_uid)
oblog.execute("Insert into oblog_upfile (userid,file_name,file_path,file_ext,file_size,isphoto,sysclassid,userclassid) values ("&oblog.l_uid&",'"&File.FileName&"','"&F_FileName&"','"&File.FileExt&"',"&File.FileSize&","&isphoto&","&sysclass&","&subject&")")
Response.Write "文件:"& F_FileName &"上传成功![ <a href=upload.asp?re="&re&"&ubb="&ubb&"&isphoto="&isphoto&"&tMode=" & tMode &">再次上传</a> ]"
Set File = Nothing
Next
Else
Response.write "请正确选择要上传的文件。[ <a href='upload.asp?re="&re&"&ubb="&ubb&"&isphoto="&isphoto&"&tMode=" & tMode &"'>重新上传</a> ]"
Exit Sub
End If
Set Upload = Nothing
End Sub
'检查上传目录,若无目录则自动建立
Function CreatePath(PathValue)
Dim objFSO,Fsofolder,uploadpath
if upload_dir<>"" then
uploadpath = year(Date) & "-" & month(Date)
else
uploadpath=""
end if
If Right(PathValue,1)<>"/" Then PathValue = PathValue&"/"
On Error Resume Next
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
if upload_dir<>"" then '检查上传目录
If objFSO.FolderExists(Server.MapPath(upload_dir))=False Then
objFSO.CreateFolder Server.MapPath(upload_dir)
End If
end if
If objFSO.FolderExists(Server.MapPath(PathValue & uploadpath))=False Then
objFSO.CreateFolder Server.MapPath(PathValue & uploadpath)
End If
If Err.Number = 0 and upload_dir<>"" Then
CreatePath = PathValue & uploadpath & "/"
Else
CreatePath = PathValue
End If
Set objFSO = Nothing
End Function
%>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?