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

Discussione: [ASP] Upload di file

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    327

    [ASP] Upload di file

    Lo so basta fare una ricerca in giro.... ...ma credetemi non sono ancora riuscito a trovare quello di cui ho bisogno.

    Veniamo al dunque: Ho una pagina in asp contenente una form dove inserendo dei dati, questi vengono aggiornati in un database.
    In questa Form ho una casella di testo dove devo inserire il nome (completo di estensione) di una immagine, la quale verrà memorizzata nel database.
    Adesso vorrei modificare il modo con il quale inserire il nome di questa immagine. Mi spiego, anzichè inserire il nome manualmente vorrei che tramite un tasto sfoglia, io mi vada a selezionare il file sul pc locale e dopodichè mi faccia sia l'upload del file sul server in una determinata cartella e che mi lasci scritto nella casella di testo il nome del file.... figo vero?

    Scherzi a parte vi posto il codice funzionante per l'upload...ma non saprei come adattarlo al mio caso, in quanto facendo l'upload mi redireziona su altre pagine..ma io ho bisogno di fare l'upload rimanendo in quella pagina con quel form..per non incorrere in errori....
    ...Spero che qlc abbia 5-10-20...min da dedicarmi..ne sarei veramente grato.
    Saluti.

    <CODE>--UPLOADFORM.ASP-----------------
    --------------------------------------------

    <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>SELEZIONARE IL FILE PER L'UPLOAD</FONT></td>
    </tr>
    <tr>
    <td width="400" height="0" bgcolor="#E6E6FF">
    <form method="POST" enctype="multipart/form-data" action="upload.asp">
    <p align="center"><font color="#000080" size="2" face="Arial">

    File: </font>
    <input type="file" name="blob" size=30>

    <input type="submit" name="Enter" value="Aggiungi">
    </form>
    </td>
    </tr>
    <tr>
    <td width="400" height="10" bgcolor="#40576f" align=right></td>
    </tr>
    </table>


    </body>
    </html>

    --------------------------------------------
    <\CODE>--UPLOADFORM.ASP-----------------


    <CODE>--UPLOAD.ASP----------------------
    --------------------------------------------

    <%
    'variabili di configurazione
    Dim folder
    folder = "\prodotti" '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("blob").Item("ContentType")
    filepathname = UploadRequest.Item("blob").Item("FileName")
    filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,"\"))
    value = UploadRequest.Item("blob").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></td>
    </tr>
    </table>


    </body>
    </html>

    --------------------------------------------
    <\CODE>--UPLOAD.ASP----------------------
    Errare è umano, Perseverare è Diabolico.
    sapiente è colui ke sa di non sapere.

  2. #2
    In che senso hai bisogno di rimanere in quelal pagina?

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    327
    nel senso che io ho gia un form con la action verso updateform.asp (il quale farebbe l'aggiornamento dei dati di quella form)
    ma se inserisco ancora un'altra form con action verso upload.asp (il quale farebbe l'upload delle immagini) mi darebbe l'errore del primo form...non so se mi sono spieato bene
    Errare è umano, Perseverare è Diabolico.
    sapiente è colui ke sa di non sapere.

  4. #4
    ok capito...la pagina dove inserisci i dati, updateform.asp o update.asp devono essere 1 sola, la stessa che inserisce i dati e carica l'immagine, se vuoi ti posto il codice , ma serebbe un ripetere i 10.000 esempi che già sono stati postati.

    Se cerchi bene, imente ha addirittura postato una classe per ridimensionare l'immagine

    cmq se vuoi ti posto il codice... (poi so che mi sgridano)

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    327
    Ok ti ringranzio...provo a fare ancora una ricerca...magari se non risolvo ci sentiamo in privato
    Thank you!
    Errare è umano, Perseverare è Diabolico.
    sapiente è colui ke sa di non sapere.

  6. #6
    no problema
    Il codice posso postarlo anche quì

  7. #7
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    327
    ...sarò io che sono gnucco... ...ma è come cercare un mazzo di chiavi nell'erba fuori dalla discoteca dopo 4-5 tequila
    Errare è umano, Perseverare è Diabolico.
    sapiente è colui ke sa di non sapere.

  8. #8


    scaricati questo file (upload.asp) da questo link
    www.karate-mantova.it/file_per_upload.rar
    (non lo posto perchè è molto lungo)


    dopo di che crei la pagina che inserisce i dati o li modifica e carica l'immagine, questo il codice:
    (includi la connesione al database)

    codice:
    <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
    
    
    <%
    Dim oUpload
    Set oUpload= new cUpload
    With oUpload
    
    .EnabledAspUpload = False
    '.EnabledImageSize = TRUE
    .EnabledLog = False
    .AutoRename = False
    .Overwrite = True
    
    .SetPath "percorso della cartella per le immagini"
    
    .Load
    .UploadOnly "Images"
    While Not .Eof
    .Save
    .MoveNext
    Wend
    End With
    
    
    testo = oUpload.Form("testo")
    immagine= oUpload.Form("immagine")
    
    
    
    
    Set oUpload = Nothing
    
    
    Response.redirect("nome_della_pagina .asp")
    Tanto...lo fanno tutti... posso farlo anche io vero?

  9. #9
    se mi dici quando lo hai scaricato lo tolgo dal server
    Tanto...lo fanno tutti... posso farlo anche io vero?

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    327
    Si ho già scaricato.
    ..ma scusami ma penso già di essermene approfittato abbastanza...avresti mica volia di dare un'occhiata a questo file
    http://www.freelux.net/Admin.rar
    Errare è umano, Perseverare è Diabolico.
    sapiente è colui ke sa di non sapere.

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.