Public write_script As ScriptingContext
Public write_application As Application
Public write_request As Request
Public write_response As Response
Public write_server As Server
Public write_session As Session
Dim conn
Dim thefile_upload
Dim RequestData
Dim requestbytes As New Stream
Dim upfilefalse As New Scripting.Dictionary
Dim upfilesuccess As New Scripting.Dictionary
Public Sub OnStartPage(MyscriptingContext As ScriptingContext)
Set write_script = MyscriptingContext
Set write_application = MyscriptingContext.Application
Set write_request = MyscriptingContext.Request
Set write_response = MyscriptingContext.Response
Set write_server = MyscriptingContext.Server
Set write_session = MyscriptingContext.Session
End Sub
Public Sub the_upload()
Set thefile_upload = New upload
user_id = write_session("id")
'write_response.Write user_id
' Call thefile_upload.saveindisk("d:\xxx.jpg", File.filestart, File.filesize)
End If
Next
End Sub
Private Function getthefoldernum(foldernum)
Dim a
a = Split(foldernum, "_")
getthefoldernum = a(1)
End Function
Public Sub thefinalupfile(therealname, theaddr, thefilename)
Dim pic1 As StdPicture
Set pic1 = LoadPicture(theaddr)
If Err.Number = 0 Then
thewidth = pic1.Width
theheight = pic1.Height
Dim MyCommand As New ADODB.Command
Set MyCommand.ActiveConnection = conn
MyCommand.CommandType = 4
MyCommand.CommandText = "updatefileindb"
Set Myparam = MyCommand.CreateParameter("filename", 3, 1, 4, therealname)
MyCommand.Parameters.Append Myparam
Set Myparam = MyCommand.CreateParameter("picwidth", 3, 1, 4, thewidth)
MyCommand.Parameters.Append Myparam
Else
Err.Clear
sql = "delete from pic where filename='" & therealname & "'"
conn.Execute sql
upfilefalse.Add thefilename, therealname
End If
End Sub
Private Function getthetype(thefilename)
a = Split(thefilename, ".")
getthetype = a(1)
End Function
Public Sub getconn(conntemp)
Set conn = conntemp
End Sub
Private Function getfilename(foldernum, user_id, FileName, filesize, filetype)
'On Error Resume Next
'保存图片到数据库
Dim MyCommand As New ADODB.Command
Set MyCommand.ActiveConnection = conn
MyCommand.CommandType = 4
MyCommand.CommandText = "upfileindb"
Set Myparam = MyCommand.CreateParameter("filename", 200, 1, 50, FileName)
MyCommand.Parameters.Append Myparam
Set Myparam = MyCommand.CreateParameter("id", 3, 1, 4, user_id)
MyCommand.Parameters.Append Myparam
Set Myparam = MyCommand.CreateParameter("filesize", 3, 1, 4, filesize)
MyCommand.Parameters.Append Myparam
Set Myparam = MyCommand.CreateParameter("foldernum", 3, 1, 4, foldernum)
MyCommand.Parameters.Append Myparam
Set Myparam = MyCommand.CreateParameter("pictype", 200, 1, 50, filetype)
MyCommand.Parameters.Append Myparam
Set Myparam = MyCommand.CreateParameter("thefilename", 3, 2, 4)
MyCommand.Parameters.Append Myparam
MyCommand.Execute
thefilename = MyCommand("thefilename")
Set MyCommand = Nothing
getfilename = thefilename
End Function
'Dim write_application, write_request, write_response, write_server, write_session
Dim RequestData
Dim objform As New Scripting.Dictionary
Dim objfile As New Scripting.Dictionary
Dim requestbytes As New ADODB.Stream
'On Error Resume Next
Public Sub init(write_application1, write_request1, write_response1, write_server1, write_session1)
Set write_application = write_application1
Set write_request = write_request1
Set write_response = write_response1
Set write_server = write_server1
Set write_session = write_session1
End Sub
Public Function Form(strForm)
strForm = LCase(strForm)
If Not objform.Exists(strForm) Then
Form = ""
Else
Form = objform(strForm)
End If
End Function
Public Function theobjfile()
'write_response.Write TypeName(objfile)
Set theobjfile = objfile
End Function
Public Function File(strFile)
strFile = LCase(strFile)
If Not objfile.Exists(strFile) Then
Set File = New File
Else
Set File = objfile(strFile)
End If
End Function
Public Sub getfileinfo(write_application, write_request, write_response, write_server, write_session)
On Error Resume Next
Dim tStream As New ADODB.Stream
With requestbytes
.Type = 1
.Mode = 3
.Open
.Write write_request.BinaryRead(write_request.TotalBytes)
' write_response.Write write_request.TotalBytes
.Position = 0
RequestData = .Read
End With
With theFile
.filetype = Mid(sInfo, iFindStart, iFindEnd - iFindStart)
.filestart = iInfoEnd
.filesize = iFormStart - iInfoEnd - 3
.formname = sFormName
.image = dataend
End With
If Not objfile.Exists(sFormName) Then
objfile.Add sFormName, theFile
End If
Else
'如果是表单项目
With tStream
.Type = 1
.Mode = 3
.Open
requestbytes.Position = iInfoEnd
requestbytes.CopyTo tStream, iFormStart - iInfoEnd - 3
.Position = 0
.Type = 2
.Charset = "gb2312"
sFormValue = .ReadText
.Close
End With
If objform.Exists(sFormName) Then
objform(sFormName) = objform(sFormName) & ", " & sFormValue
Else
objform.Add sFormName, sFormValue
End If
End If
iFormStart = iFormStart + iStart + 1
Wend
RequestData = ""
Set tStream = Nothing
End Sub
Private Function GetFilePath(FullPath)
If FullPath <> "" Then
GetFilePath = Left(FullPath, InStrRev(FullPath, "\"))
Else
GetFilePath = ""
End If
End Function
Private Function getfilename(FullPath)
If FullPath <> "" Then
getfilename = Mid(FullPath, InStrRev(FullPath, "\") + 1)
Else
getfilename = ""
End If
End Function
Public Sub saveindisk(thefilename, filestart, filesize)
Dim dr As New ADODB.Stream
dr.Mode = 3
dr.Type = 1
dr.Open
requestbytes.Position = filestart
requestbytes.CopyTo dr, filesize
dr.SaveToFile thefilename, 2
dr.Close
Set dr = Nothing
End Sub