三星s7edgeroot好吗:ASP图片上传

来源:百度文库 编辑:偶看新闻 时间:2024/04/29 20:14:22
一个图片上传ASP,没有大小缩略图,也没有水印..缩略图的代码可以加,水印需要组件..
<%
ExtName = "jpg,gif,bmp" '允许扩展名
SavePath = "upload" '保存路径
If Right(SavePath,1)<>"/" Then SavePath=SavePath&"/" '在目录后加(/)

CheckAndCreateFolder(SavePath)

UpLoadAll_a = Request.TotalBytes '取得客户端全部内容

If (UpLoadAll_a>0) Then
  Set UploadStream_c = Server.CreateObject("ADODB.Stream")
  UploadStream_c.Type = 1
  UploadStream_c.Open
  UploadStream_c.Write Request.BinaryRead(UpLoadAll_a) 
  UploadStream_c.Position = 0

  FormDataAll_d = UploadStream_c.Read
  CrLf_e = chrB(13)&chrB(10)
  FormStart_f = InStrB(FormDataAll_d,CrLf_e)
  FormEnd_g = InStrB(FormStart_f+1,FormDataAll_d,CrLf_e)

  Set FormStream_h = Server.Createobject("ADODB.Stream")
  FormStream_h.Type = 1
  FormStream_h.Open
  UploadStream_c.Position = FormStart_f + 1
  UploadStream_c.CopyTo FormStream_h,FormEnd_g-FormStart_f-3
  FormStream_h.Position = 0
  FormStream_h.Type = 2
  FormStream_h.CharSet = "GB2312"
  FormStreamText_i = FormStream_h.Readtext
  FormStream_h.Close

  FileName_j = Mid(FormStreamText_i,InstrRev(FormStreamText_i,"\")+1,FormEnd_g)

  If (CheckFileExt(FileName_j,ExtName)) Then
  SaveFile = Server.MapPath(SavePath & UserFaceName(right(FileName_j,3)))

  If Err Then
  Response.Write "文件上传: 文件上传出错! 
Request.ServerVariables("URL") &""">重新上传文件

"
  Err.Clear
  Else
  SaveFile = CheckFileExists(SaveFile)
  k=Instrb(FormDataAll_d,CrLf_e&CrLf_e)+4
  l=Instrb(k+1,FormDataAll_d,leftB(FormDataAll_d,FormStart_f-1))-k-2
  FormStream_h.Type=1
  FormStream_h.Open
  UploadStream_c.Position=k-1
  UploadStream_c.CopyTo FormStream_h,l
  FormStream_h.SaveToFile SaveFile,2
   
  SaveFileName = Mid(SaveFile,InstrRev(SaveFile,"\")+1)
  Saver="upload/"&SaveFileName
  response.write "图片上传成功!请点此处预览."

'response.write ""
'response.write ""
'response.write ""
'response.write " "
  End If

  Else
'response.write "sgs"

  Response.write "文件上传:文件格式不正确!仅支持"&ExtName&"文件类型, 请重新上传文件
"
  End If

Else
%>








enctype="multipart/form-data">
文件上传:



<%
End if
Set FormStream_h = Nothing

'判断文件类型是否合格
Function CheckFileExt(FileName,ExtName) '文件名,允许上传文件类型
  FileType = ExtName 
  FileType = Split(FileType,",")
  For i = 0 To Ubound(FileType)
  If LCase(Right(FileName,3)) = LCase(FileType(i)) then
  CheckFileExt = True
  Exit Function
  Else
  CheckFileExt = False
  End if
  Next
End Function

'检查上传文件夹是否存在,不存在则创建文件夹
Function CheckAndCreateFolder(FolderName)
  fldr = Server.Mappath(FolderName)
  Set fso = CreateObject("Scripting.FileSystemObject")
  If Not fso.FolderExists(fldr) Then
  fso.CreateFolder(fldr)
  End If
  Set fso = Nothing
End Function


'生成文件新的文件名
Function UserFaceName(FileExt)
Randomize
RanNum = Int(90000*rnd)+10000
  UserFaceName = UserID&Year(now)&Month(now)&Day(now)&Hour(now)&Minute(now)&Second(now)&RanNum&"."&FileExt
End Function




'检查文件是否存在,重命名存在文件
Function CheckFileExists(FileName)
Set fso=Server.CreateObject("Scripting.FileSystemObject")
If fso.FileExists(SaveFile) Then
  i=1
  msg=True
  Do While msg
  CheckFileExists = Replace(SaveFile,Right(SaveFile,4),"_" & i & Right(SaveFile,4))
  If not fso.FileExists(CheckFileExists) Then
  msg=False
  End If
  i=i+1
  Loop
Else
  CheckFileExists = FileName
End If
Set fso=Nothing
End Function

%>