Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: [ASP] Upload multiplo

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    172

    [ASP] Upload multiplo

    Salve a tutti,

    Ho un problema con l'uload di immagini sul server. Ho il codice per spediren una per volta ma mi serve per almeno tre per volta.

    Ho cercato un po ma nn ho trovato niente, neanche sul forum.

    Avete qualche dritta da darmi?

    Grazie in anticipo

  2. #2
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    ripetere 3 volte il codice non va bene? :master:

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    172
    Si ho pensato anche a quello ma diventerebbe pesante, no?

  4. #4
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    cioè praticamente hai un form con tre upload e li vuoi uppare tutti insieme...giusto?
    usi la classe di baol?
    Rixx

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    172
    Ho un form con tre campi file, che contengono ovviamente il persorso dei file da spedire. Poi in mezzo c'è anche il codice per inserirlo nel db ma è un altro discorso.

    Con un campo file va tutto Ok, ma se li devo spedie tutti e tre insieme come faccio?

    Il codice che utilizzo è questo:

    <%
    '''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''
    'Upload con ASP by ASPCode.it - http://www.aspcode.it '
    '''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''''
    'variabili di configurazione
    Dim folder
    folder = "\public" 'directory sul server con accesso in scrittura
    'fine variabili di configurazione

    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)
    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("foto").Item("ContentType")
    filepathname = UploadRequest.Item("foto").Item("FileName")
    filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
    value = UploadRequest.Item("foto").Item("Value")

    'Create FileSytemObject Component
    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")

    'Create and Write to a File
    Set MyFile = ScriptObject.CreateTextFile(Server.mappath(folder) &"\"&filename)

    For i = 1 to LenB(value)
    MyFile.Write chr(AscB(MidB(value,i,1)))
    Next

    MyFile.Close
    %>

    <html>
    <head>
    <title>UPLOAD FILE</title>
    </head>
    <body>


    <table border=0 width=360 bgcolor=#40576f cellspacing=1 align=center>
    <tr>
    <td width=400 align=center bgcolor=#40576f><FONT FACE="tahoma" color=#ffffff size=2>Il file <%=filename%> è stato uploadato con successo.</FONT></td>
    </tr>
    <tr>
    <td width="400" height="30" bgcolor="#E6E6FF" align=center>&lt; &lt; UPLOAD DI UN ALTRO FILE</font></td>
    </tr>
    <tr>
    <td width="400" height="10" bgcolor="#40576f" align=right>www.aspcode.it</font></td>
    </tr>
    </table>


    </body>
    </html>
    Come faccio?

  6. #6
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    aspcode ok, sinceramente ti consiglio di ripetere il codice 3 volte , una per ogni file (devi solo fare 3 request differenti e 3 upload differenti)
    è il metodo piu semplice, al massimo metti un caricamento in corso durante il processo se proprio pensi che i file siano troppo pesanti.

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    172
    Non è possibile mettere la variabile filename come array con i nomi dei file?

  8. #8
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    naturalmente ma poi dovresti spezzettarla di nuovo e ripetere il codice 3 volte per quanto ne so io..

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    172
    Allora mi sa che faccio ripetere il codice 3 volte. Come si fa a visualizzare il msg di attesa?

    Oppure, esiste il modo con mysql di inserire direttamente le immagini nel db anzichè il percorso dell'immagine stessa?

  10. #10
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,854
    non ti consiglio di inserire direttamente le immagini nel db,
    cmq per il caricamento puoi usare javascript fatti una ricerca sul web ci sono un sacco di script di loading..oppure chiedi di la

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 © 2025 vBulletin Solutions, Inc. All rights reserved.