Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    395

    Asp upload Response Buffer Limit Exceeded

    Ciao a tutti, uso questo script per fare l'upload sul server di file, il problema viene fuori quando ho un file con piu' di 5000 records.
    Ho provato a mettere Response.Buffer = False all'inizio della pagina ma niente....
    Qualcuno mi sa dare un suggerimento?

    Ciao e grazie in anticipo




    <%
    'variabili di configurazione
    Dim folder
    'folder = "\public" 'directory sul server con accesso in scrittura
    'folder = "C:\Inetpub\wwwroot\site\Products"
    folder = "\NewSite\Products\"&ProductsFolder&""
    'fine variabili di configurazione
    Dim RefId

    Response.Expires=0
    Response.Buffer = TRUE
    Response.Clear


    Sub BuildUploadRequest(RequestBin)
    PosBeg = 1
    PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))
    boundary = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
    boundaryPos = InstrB(1,RequestBin,boundary)
    Do until (boundaryPos=InstrB(RequestBin,boundary & getByteString("--")))
    Dim UploadControl
    Set UploadControl = CreateObject("Scripting.Dictionary")
    'Get an object name
    Pos = InstrB(BoundaryPos,RequestBin,getByteString("Conte nt-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("filen ame="))
    PosBound = InstrB(PosEnd,RequestBin,boundary)
    'response.Write(PosFile)
    'response.End()
    If PosFile<>0 AND (PosFile<PosBound) Then
    PosBeg = PosFile + 10
    PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(34)))
    FileName = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))

    UploadControl.Add "FileName", FileName
    Pos = InstrB(PosEnd,RequestBin,getByteString("Content-Type:"))
    PosBeg = Pos+14
    PosEnd = InstrB(PosBeg,RequestBin,getByteString(chr(13)))
    ContentType = getString(MidB(RequestBin,PosBeg,PosEnd-PosBeg))
    UploadControl.Add "ContentType",ContentType
    PosBeg = PosEnd+4
    PosEnd = InstrB(PosBeg,RequestBin,boundary)-2
    Value = MidB(RequestBin,PosBeg,PosEnd-PosBeg)
    Else
    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
    UploadControl.Add "Value" , Value
    UploadRequest.Add name, UploadControl
    BoundaryPos=InstrB(BoundaryPos+LenB(boundary),Requ estBin,boundary)
    Loop
    End Sub
    Function getByteString(StringStr)
    For i = 1 to Len(StringStr)
    char = Mid(StringStr,i,1)
    getByteString = getByteString & chrB(AscB(char))
    Next
    End Function
    Function getString(StringBin)
    getString =""
    For intCount = 1 to LenB(StringBin)
    getString = getString & chr(AscB(MidB(StringBin,intCount,1)))
    Next
    End Function

    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")
    'response.Write(filepathname)
    'response.Write(value)
    'response.End()
    'Create FileSytemObject Component
    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")

    'Create and Write to a File
    Set MyFile = ScriptObject.CreateTextFile(Server.mappath(folder) &"\"&filename)
    'response.Write(MyFile)
    'response.End()
    For i = 1 to LenB(value)
    MyFile.Write chr(AscB(MidB(value,i,1)))
    Next
    'response.Write(filename)
    'response.Write(value)
    'response.End()
    MyFile.Close

  2. #2
    Cosa vuol dire un file con + di 5000 records ?

    Cosa uploadi sul server ?

    Cosa contengono i 2 include e asp upload è un componente ?

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    395
    Ciao faccio un upload di un file csv o txt e il file ha piu' di 5000 record o meglio righe....

    Quella che vedi non e' un componente ma la pagina che mi fa l'upload....

  4. #4
    Mi ha tratto in inganno il titolo "Asp upload"

    Perchè non cambi script ?

    Prova baol

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    395
    Ti ringrazio ora ci do un occhio ma mi scoccia cambiare una cosa che funziona a parte questa cosa del buffer, altre idee?

  6. #6
    Lo stai testando in locale ?

    Hai provato sul server (in remoto) ?

    Scusa,scusa, ma tu hai detto che hai provato a mettere response.buffet=false ad inizio pagina o lo hai fatto qui ?

    Response.Expires=0
    Response.Buffer = FALSE
    Response.Clear

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    395
    entrambi....

  8. #8
    Utente di HTML.it L'avatar di StegcO
    Registrato dal
    Aug 2008
    Messaggi
    371
    io uso BAOL ma da lo stesso problema, se carichi un file più grosso di 1 MB (mi pare) non funziona.

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    395
    allora non sono solo........
    qualche idea?

  10. #10
    Utente di HTML.it L'avatar di StegcO
    Registrato dal
    Aug 2008
    Messaggi
    371
    io ero rimasto che è un limite di ASP puro, per andare oltre il mega bisogna usare asp.net, poi non sò se è vero, ma avevo trovato questa risposta ai tempi (4 mesi fa)

    inotlre togliere il limite di buffer ecc avevo provato anche io ma niente

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.