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

📄 futils.inc

📁 大家好
💻 INC
字号:
<SCRIPT RUNAT=SERVER LANGUAGE=VBSCRIPT>

Dim LogFolder
LogFolder = Server.MapPath(".")
Const LogSeparator = ", "

Function SaveUpload(Fields, DestinationFolder, LogFolder)
  If DestinationFolder = "" Then DestinationFolder = Server.MapPath(".")

  Dim UploadNumber, OutFileName, FS, OutFolder, TimeName, Field
  Dim LogLine, pLogLine, OutLine

  Application.Lock
    If Application("UploadNumber") = "" Then
      Application("UploadNumber") = 1
    Else
      Application("UploadNumber") = Application("UploadNumber") + 1
    End If
    UploadNumber = Application("UploadNumber")
  Application.UnLock

  TimeName = Right("0" & Year(Now), 2) & Right("0" & Month(Now), 2) & Right("0" & Day(Now), 2) & "_" & Right("0" & Hour(Now), 2) & Right("0" & Minute(Now), 2) & Right("0" & Second(Now), 2) & "-" & UploadNumber
  Set FS = CreateObject("Scripting.FileSystemObject")
  Set OutFolder = FS.CreateFolder(DestinationFolder +"\"+TimeName)

  Dim TextStream, SaveFileName
  
  'Save the uploaded fields and create log line
  For Each Field In Fields.Items
        
    SaveFileName = Empty
    If Field.FileName <> "" Then 'This field is uploaded file. Save the file to its own folder
      SaveFileName = Field.Name & "\" & Field.FileName
      FS.CreateFolder (OutFolder & "\" & Field.Name)
    Else
      If Field.Length > 0 Then SaveFileName = Field.Name
    End If

    If Not IsEmpty(SaveFileName) Then

      Set TextStream = FS.CreateTextFile(OutFolder & "\" & SaveFileName)

      TextStream.Write BinaryToString(Field.Value) ' BinaryToString is in upload.inc.
      TextStream.Close
    End If

    'Create log line with info about the field
    LogLine = LogLine & """" & LogF(Field.Name) & LogSeparator & LogF(Field.Length) & LogSeparator & LogF(Field.ContentDisposition) & LogSeparator & LogF(Field.FileName) & LogSeparator & LogF(Field.ContentType) & """" & LogSeparator
  Next
  
  'Creates line with global request info
  pLogLine = pLogLine & LogLine & Request.ServerVariables("REMOTE_ADDR") & LogSeparator & LogF(Request.ServerVariables("LOGON_USER")) & LogSeparator & Request.ServerVariables("HTTP_Content_Length") & LogSeparator & OutFolder & LogSeparator & LogF(Request.ServerVariables("HTTP_USER_AGENT")) & LogSeparator & LogF(Request.ServerVariables("HTTP_COOKIE"))

  'Create output line for the client
  OutLine = OutLine & "Fields was saved to the <b>" & OutFolder & "</b> folder.<br>"
  
  DoLog pLogLine, "UP"

  Set TextStream = FS.CreateTextFile(OutFolder & "\all_raw.txt")
  TextStream.Write Request.ServerVariables("ALL_RAW")
  TextStream.Close
  
  OutFolder = Empty 'Clear variables.
  SaveUpload = OutLine
End Function

Function DoLog(LogLine, LogPrefix)
  If LogFolder = "" Then LogFolder = Server.MapPath(".")
  Dim OutStream, FileName
  FileName = LogPrefix & Right("0" & Year(Now), 2) & Right("0" & Month(Now), 2) & Right("0" & Day(Now), 2) & ".LOG"

  Set OutStream = Server.CreateObject("Scripting.FileSystemObject").OpenTextFile(LogFolder & "\" & FileName, 8, True)
  OutStream.WriteLine Now() & LogSeparator & LogLine
  OutStream = Empty
End Function

Function LogF(ByVal F)
  If "" & F = "" Then LogF = "-" Else LogF = "" & F
End Function

Function LogFn(ByVal F)
  If "" & F = "" Then LogFn = "-" Else LogFn = formatnumber(F, 0)
End Function

Dim Kernel, TickCount, KernelTime, UserTime
Sub BeginTimer()
On Error Resume Next
  Set Kernel = CreateObject("ScriptUtils.Kernel") 'Creates the Kernel object
  TickCount = Kernel.TickCount
  KernelTime = Kernel.CurrentThread.KernelTime
  UserTime = Kernel.CurrentThread.UserTime
On Error GoTo 0
End Sub

Sub EndTimer()
 On Error Resume Next
  Response.Write "<br>Script time : " & (Kernel.TickCount - TickCount) & " ms"
  Response.Write "<br>Kernel time : " & CLng((Kernel.CurrentThread.KernelTime - KernelTime) * 86400000) & " ms"
  Response.Write "<br>User time : " & CLng((Kernel.CurrentThread.UserTime - UserTime) * 86400000) & " ms"
On Error GoTo 0
  Kernel = Empty
End Sub

</SCRIPT>

⌨️ 快捷键说明

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