17. februar 2001 - 22:39Der er
1 kommentar og 2 løsninger
Upload
Jeg har dette upload tingeling her, <% Response.Expires=0 Response.Buffer = TRUE Response.Clear byteCount = Request.TotalBytes RequestBin = Request.BinaryRead(byteCount) Dim UploadRequest Set UploadRequest = CreateObject(\"Scripting.Dictionary\") BuildUploadRequest(RequestBin) contentType = UploadRequest.Item(\"blob\").Item(\"ContentType\") filepathname = UploadRequest.Item(\"blob\").Item(\"FileName\") filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,\"\\\")) value = UploadRequest.Item(\"blob\").Item(\"Value\") Set ScriptObject = Server.CreateObject(\"Scripting.FileSystemObject\") \'pathEnd = Len(Server.mappath(Request.ServerVariables(\"PATH_INFO\")))-14 \'Response.Write (Request.ServerVariables(\"PATH_INFO\")) Set MyFile = ScriptObject.CreateTextFile(Server.mappath(\"../profilimg/\" & session(\"id\") & \"_\" & filename & \"\")) For i = 1 to LenB(value) MyFile.Write chr(AscB(MidB(value,i,1))) Next MyFile.Close %>
<% Sub BuildUploadRequest(RequestBin) \'Get the boundary PosBeg = 1 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13))) boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg) boundaryPos = InstrB(1,RequestBin,boundary) \'Get all data inside the boundaries Do until (boundaryPos=InstrB(RequestBin,boundary & getByteString(\"--\"))) \'Members variable of objects are put in a dictionary object Dim UploadControl Set UploadControl = CreateObject(\"Scripting.Dictionary\") \'Get an object name Pos = InstrB(BoundaryPos,RequestBin,getByteString(\"Content-Disposition\")) Pos = InstrB(Pos,RequestBin,getByteString(\"name=\")) PosBeg = Pos+6 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34))) Name = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) PosFile = InstrB(BoundaryPos,RequestBin,getByteString(\"filename=\")) PosBound = InstrB(PosEnd,RequestBin,boundary) \'Test if object is of file type If PosFile<>0 AND (PosFile<PosBound) Then \'Get Filename, content-type and content of file PosBeg = PosFile + 10 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34))) FileName = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) \'Add filename to dictionary object UploadControl.Add \"FileName\", FileName Pos = InstrB(PosEnd,RequestBin,getByteString(\"Content-Type:\")) PosBeg = Pos+14 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13))) \'Add content-type to dictionary object ContentType = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) UploadControl.Add \"ContentType\",ContentType \'Get content of object PosBeg = PosEnd+4 PosEnd = InstrB(PosBeg,RequestBin,boundary)-2 Value = MidB(RequestBin,PosBeg,PosEnd-PosBeg) Else \'Get content of object Pos = InstrB(Pos,RequestBin,getByteString(chr(13))) PosBeg = Pos+4 PosEnd = InstrB(PosBeg,RequestBin,boundary)-2 Value = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) End If \'Add content to dictionary object UploadControl.Add \"Value\" , Value \'Add dictionary object to main dictionary UploadRequest.Add name, UploadControl \'Loop to next object BoundaryPos=InstrB(BoundaryPos+LenB(boundary),RequestBin,boundary) Loop
End Sub
\'String to byte string conversion Function getByteString(StringStr) For i = 1 to Len(StringStr) char = Mid(StringStr,i,1) getByteString = getByteString & chrB(AscB(char)) Next End Function
\'Byte string to string conversion Function getString(StringBin) getString =\"\" For intCount = 1 to LenB(StringBin) getString = getString & chr(AscB(MidB(StringBin,intCount,1))) Next End Function %>
Jeg forstår ikke helt selv noget af den, men det virker da ;-) Nogen der kan få det til og afvise filer over 50 kb ?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
<% \'******* nyt***** limit = 50000 \'******* nyt end ***** Response.Expires=0 Response.Buffer = TRUE Response.Clear byteCount = Request.TotalBytes \'****** her er nyt ************* if byteCount<limit then \'****** her er nyt end*************
RequestBin = Request.BinaryRead(byteCount) Dim UploadRequest Set UploadRequest = CreateObject(\"Scripting.Dictionary\") BuildUploadRequest(RequestBin) contentType = UploadRequest.Item(\"blob\").Item(\"ContentType\") filepathname = UploadRequest.Item(\"blob\").Item(\"FileName\") filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,\"\\\")) value = UploadRequest.Item(\"blob\").Item(\"Value\") Set ScriptObject = Server.CreateObject(\"Scripting.FileSystemObject\") \'pathEnd = Len(Server.mappath(Request.ServerVariables(\"PATH_INFO\")))-14 \'Response.Write (Request.ServerVariables(\"PATH_INFO\")) Set MyFile = ScriptObject.CreateTextFile(Server.mappath(\"../profilimg/\" & session(\"id\") & \"_\" & filename & \"\")) For i = 1 to LenB(value) MyFile.Write chr(AscB(MidB(value,i,1))) Next MyFile.Close %>
<% Sub BuildUploadRequest(RequestBin) \'Get the boundary PosBeg = 1 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13))) boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg) boundaryPos = InstrB(1,RequestBin,boundary) \'Get all data inside the boundaries Do until (boundaryPos=InstrB(RequestBin,boundary & getByteString(\"--\"))) \'Members variable of objects are put in a dictionary object Dim UploadControl Set UploadControl = CreateObject(\"Scripting.Dictionary\") \'Get an object name Pos = InstrB(BoundaryPos,RequestBin,getByteString(\"Content-Disposition\")) Pos = InstrB(Pos,RequestBin,getByteString(\"name=\")) PosBeg = Pos+6 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34))) Name = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) PosFile = InstrB(BoundaryPos,RequestBin,getByteString(\"filename=\")) PosBound = InstrB(PosEnd,RequestBin,boundary) \'Test if object is of file type If PosFile<>0 AND (PosFile<PosBound) Then \'Get Filename, content-type and content of file PosBeg = PosFile + 10 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34))) FileName = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) \'Add filename to dictionary object UploadControl.Add \"FileName\", FileName Pos = InstrB(PosEnd,RequestBin,getByteString(\"Content-Type:\")) PosBeg = Pos+14 PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13))) \'Add content-type to dictionary object ContentType = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) UploadControl.Add \"ContentType\",ContentType \'Get content of object PosBeg = PosEnd+4 PosEnd = InstrB(PosBeg,RequestBin,boundary)-2 Value = MidB(RequestBin,PosBeg,PosEnd-PosBeg) Else \'Get content of object Pos = InstrB(Pos,RequestBin,getByteString(chr(13))) PosBeg = Pos+4 PosEnd = InstrB(PosBeg,RequestBin,boundary)-2 Value = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg)) End If \'Add content to dictionary object UploadControl.Add \"Value\" , Value \'Add dictionary object to main dictionary UploadRequest.Add name, UploadControl \'Loop to next object BoundaryPos=InstrB(BoundaryPos+LenB(boundary),RequestBin,boundary) Loop
End Sub
\'String to byte string conversion Function getByteString(StringStr) For i = 1 to Len(StringStr) char = Mid(StringStr,i,1) getByteString = getByteString & chrB(AscB(char)) Next End Function
\'Byte string to string conversion Function getString(StringBin) getString =\"\" For intCount = 1 to LenB(StringBin) getString = getString & chr(AscB(MidB(StringBin,intCount,1))) Next End Function \'****** her er nyt ************* else response.write \"DIn fil er for stor\" end if \'****** her er nyt end *************
%>
Jeg er ikke helt sikker på om responsewrite delen duer, har ikke testet det igennem, men det burde virke
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.