⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 upfileclass.asp

📁 JTBC网站内容管理系统是一套可扩充的网站内容管理系统
💻 ASP
字号:
<%
'######################################
' eWebEditor v3.70 - Advanced online browser based WYSIWYG HTML editor.
' Copyright (c) 2003-2005 eWebEditor.com
'
' For further information go to http://www.ewebeditor.com/
' This copyright notice MUST stay intact for use.
'######################################

Dim oUpFileStream
Class UpFile_Class
  Dim Form, File, Version, Err 

  Private Sub Class_Initialize
    Err = -1
  End Sub

  Private Sub Class_Terminate  
    If Err < 0 Then
      Form.RemoveAll
      Set Form = Nothing
      File.RemoveAll
      Set File = Nothing
      oUpFileStream.Close
      Set oUpFileStream = Nothing
    End If
  End Sub

  Public Sub GetData(MaxSize)
    Const IsOpenUpLoad = 1
    If IsOpenUpLoad <> 1 Then Exit Sub
    Dim RequestBinData, sSpace, bCrLf, sInfo, iInfoStart, iInfoEnd, tStream, iStart, oFileInfo
    Dim iFileSize, sFilePath, sFileType, sFormValue, sFileName
    Dim iFindStart, iFindEnd
    Dim iFormStart, iFormEnd, sFormName
    If Request.TotalBytes < 1 Then
      Err = 1
      Exit Sub
    End If
    If MaxSize > 0 Then
      If Request.TotalBytes > MaxSize Then
        Err = 2
        Exit Sub
      End If
    End If
    Set Form = Server.CreateObject("Scripting.Dictionary")
    Form.CompareMode = 1
    Set File = Server.CreateObject("Scripting.Dictionary")
    File.CompareMode = 1
    Set tStream = Server.CreateObject("ADODB.Stream")
    Set oUpFileStream = Server.CreateObject("ADODB.Stream")
    oUpFileStream.Type = 1
    oUpFileStream.Mode = 3
    oUpFileStream.Open 
    oUpFileStream.Write Request.BinaryRead(Request.TotalBytes)
    oUpFileStream.Position = 0
    RequestBinData = oUpFileStream.Read 
    iFormEnd = oUpFileStream.Size
    bCrLf = ChrB(13) & ChrB(10)
    sSpace = MidB(RequestBinData,1, InStrB(1,RequestBinData,bCrLf)-1)
    iStart = LenB(sSpace)
    iFormStart = iStart+2
    Do
      iInfoEnd = InStrB(iFormStart,RequestBinData,bCrLf & bCrLf)+3
      tStream.Type = 1
      tStream.Mode = 3
      tStream.Open
      oUpFileStream.Position = iFormStart
      oUpFileStream.CopyTo tStream,iInfoEnd-iFormStart
      tStream.Position = 0
      tStream.Type = 2
      tStream.CharSet = "utf-8"
      sInfo = tStream.ReadText
      iFormStart = InStrB(iInfoEnd,RequestBinData,sSpace)-1
      iFindStart = InStr(22,sInfo,"name=""",1)+6
      iFindEnd = InStr(iFindStart,sInfo,"""",1)
      sFormName = Mid(sinfo,iFindStart,iFindEnd-iFindStart)
      If InStr(45,sInfo,"filename=""",1) > 0 Then
        Set oFileInfo = new FileInfo_Class
        iFindStart = InStr(iFindEnd,sInfo,"filename=""",1)+10
        iFindEnd = InStr(iFindStart,sInfo,"""",1)
        sFileName = Mid(sinfo,iFindStart,iFindEnd-iFindStart)
        oFileInfo.FileName = Mid(sFileName,InStrRev(sFileName, "\")+1)
        oFileInfo.FilePath = Left(sFileName,InStrRev(sFileName, "\"))
        oFileInfo.FileExt = Mid(sFileName,InStrRev(sFileName, ".")+1)
        iFindStart = InStr(iFindEnd,sInfo,"Content-Type: ",1)+14
        iFindEnd = InStr(iFindStart,sInfo,vbCr)
        oFileInfo.FileType = Mid(sinfo,iFindStart,iFindEnd-iFindStart)
        oFileInfo.FileStart = iInfoEnd
        oFileInfo.FileSize = iFormStart -iInfoEnd -2
        oFileInfo.FormName = sFormName
        file.add sFormName,oFileInfo
      else
        tStream.Close
        tStream.Type = 1
        tStream.Mode = 3
        tStream.Open
        oUpFileStream.Position = iInfoEnd 
        oUpFileStream.CopyTo tStream,iFormStart-iInfoEnd-2
        tStream.Position = 0
        tStream.Type = 2
        tStream.CharSet = "utf-8"
        sFormValue = tStream.ReadText
        If Form.Exists(sFormName) Then
          Form(sFormName) = Form(sFormName) & ", " & sFormValue
        Else
          form.Add sFormName,sFormValue
        End If
      End If
      tStream.Close
      iFormStart = iFormStart+iStart+2

    Loop Until (iFormStart+2) >= iFormEnd 
    RequestBinData = ""
    Set tStream = Nothing
  End Sub
End Class

Class FileInfo_Class

  Dim FormName, FileName, FilePath, FileSize, FileType, FileStart, FileExt

  Public Function SaveToFile(Path)
    On Error Resume Next
    Dim oFileStream
    Set oFileStream = CreateObject("ADODB.Stream")
    oFileStream.Type = 1
    oFileStream.Mode = 3
    oFileStream.Open
    oUpFileStream.Position = FileStart
    oUpFileStream.CopyTo oFileStream,FileSize
    oFileStream.SaveToFile Path,2
    oFileStream.Close
    Set oFileStream = Nothing 
  End Function

  Public Function FileData
    oUpFileStream.Position = FileStart
    FileData = oUpFileStream.Read(FileSize)
  End Function

End Class
%>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -