|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。上传一段复杂的ASP文件上传源代码示例,精简有用。
以下是upload.asp代码:
<formname="FORM"action="upload.asp"method="post">
<inputtype="submit"name="submit"value="OK">
<inputtype="file"name="file1"style="width:400"value="">
<inputtype=TEXTname=myfacesize=20maxlength=100>
</form>
<%
ifRequest.Form("file1")""then
DimAllowExt_’同意上传范例(白名单)
DimNoAllowExt_’不同意上传范例(黑名单)
NoAllowExt="exe;gif"’黑名单,能够在这里预设不成上传的文件范例,以文件的后缀名来判别,不分巨细写,每一个每缀名用;号分隔,假如黑名单为空,则判别白名单
NoAllowExt=LCase(NoAllowExt)
AllowExt=""’白名单,能够在这里预设可上传的文件范例,以文件的后缀名来判别,不分巨细写,每一个后缀名用;号分隔
AllowExt=LCase(AllowExt)
FunctionGetFileName(ByValstrFile)
IfstrFile""Then
GetFileName=mid(strFile,InStrRev(strFile,"")+1)
Else
GetFileName=""
EndIf
Endfunction
FunctionisAllowExt(Ext)
ifNoAllowExt=""then
isAllowExt=cbool(InStr(1,";"&AllowExt&";",LCase(";"&Ext&";")))
else
isAllowExt=notCBool(InStr(1,";"&NoAllowExt&";",LCase(";"&Ext&";")))
endif
EndFunction
PublicFunctionGetFileExt(FullPath)
IfFullPath""Then
GetFileExt=LCase(Mid(FullPath,InStrRev(FullPath,".")+1))
Else
GetFileExt=""
EndIf
Endfunction
uppath="uploadfile"
strFileName=Request.Form("file1")
strnum=trim(Len(strFileName))
filetype=mid(strFileName,strnum-2,3)
ifisAllowExt(filetype)then
SetobjStream=Server.CreateObject("ADODB.Stream")
objStream.Type=1’adTypeBinary
objStream.Open
objStream.LoadFromFilestrFileName
objStream.SaveToFileServer.MapPath(uppath&GetFileName(strFileName)),2
objStream.Close
response.write"<script>parent.document.forms[0].myface.value=’"&uppath&"/"&GetFileName(strFileName)&"’</script>"
response.write"<ahref=’"&uppath&GetFileName(strFileName)&"’>检察头像</a>"
response.write"文件范例:"&filetype&""
else
response.write"<SCRIPTlanguage=JavaScript>alert(’头像文件只同意用GIF文件格局!’);"
response.write"this.location.href=’javascript:history.back();’</SCRIPT>"
response.end
endif
endif
%>
由于ASP提供的是一对多的服务,所以用户的一些特殊需求很难得到满足。 |
|