Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    upload vario con classe di baol

    ciao a tutti.. pongo una domanda circa l'upload con la classe di baol

    tramite 3 select genero una decina di campi file e invio tutto a una pagina che processa...

    quello che mi chiedo è:

    è possibile fare in modo che i primi tre campi uploadino i file in una cartella, altri 4 in un'altra e altri in una terza cartella e cosi via (secondo un determinato ordine logico che ho) fino al totale dei campi che ho generato in origine?

    inoltre.. ad ogni blocco di files uploadati in questa o in quell'altra cartella corrisponderebbe una query di insert in un db diversa..

    è possibile???

    grazie per l'aiuto, simone

  2. #2
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    Si, è possibile.

    Inizia a creare il codice per un upload in una singola cartella e l'inderimento nel db. La modifica dei percorsi è abbastanza semplice.

    Ti consiglio di non unsare la classe Database dell'oggetto di upload.

    Quando hai scritto questo codice, postalo che ti dico come modificare il percorso di destinazione.

    Ciao

  3. #3
    ti ringrazio davvero baol per la velocità con cui hai risposto!

    ora lavoricchio un po il codice e poi posto qualcosina..
    grazie ancora, simone

    [ps: ti avevo scritto anche un pvt in contemporanea a questo 3d]

  4. #4
    codice:
    Dim oUpload
    Set oUpload = new cUpload
    With oUpload
    .EnabledAspUpload = False
    .EnabledImageSize = TRUE
    .EnabledLog = False
    .AutoRename = False ' <--- modificato da me; prima era True
    .Overwrite = False
    .SetPath "img\birre\big\"
    .Load
    .UploadOnly "Images"
    
    			'Inserimento
    
    if Session("quante_foto") = "nophoto" then
    
    		.SetDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("/provecss/inserimento/dbbirrenew2.mdb"),"SELECT * from foto_g"
    
    		.Database.open()
    		.Database.Fields("ID_birra") = session("ID_birra")
    		.Database.Fields("url_foto") = "http://www.url.it/images/birre/big/00000_00.jpg"
    		.Database.AddNew()
    end if
    
    i=0
    if Session("quante_foto") <> "nophoto" then
    
    While Not .Eof
    
    i= i +1
    
    
    If .Files("Height")>=2200 or .Files("Width")>=2350 then
     Response.write ("Le dimensioni dell'immagine " &_
     .GetFileName() &" non sono corrette (" &_
     .Files("Height") &"x" & .Files("Width") &"): File non caricato
    "  )
    
    else
    		.SetDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("/provecss/inserimento/dbbirrenew2.mdb"),"SELECT * from foto_g order by ID_foto asc"
    		.Database.open()
    
    		.Database.Fields("ID_birra") = session("ID_birra")
    		.Database.Fields("url_foto") = "http://www.url.it/images/birre/big/" & Session("nome_foto" & i)
    		
    		.Database.AddNew()
    
    		.SaveAs(Session("nome_foto" & i))
    
    
    end if
    .MoveNext
    
    Wend
    end if
    
    End With
    Set oUpload = Nothing

    io pensavo di fare cosi per tutte le 6 cartelle e le 6 tabelle nelle quali devo uploadare le foto ma ricevo un errore:

    L'operazione non è consentita se l'oggetto è aperto.
    /provecss/inserimento/upload/upload.asp, line 789

    che equivale alla linea con 'Stream.Open'

    ma se mi suggerisci di nn usare la classe Database intendi che è meglio creare la solita connessione e relativa SQL di insert?

    ciao, razie ancora, simone

  5. #5
    up... load!

  6. #6
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    La classe database è utile per operazioni semplici, ma non fa al caso tuo.

    Invece di usare una insert usa adodb.recordset.

  7. #7
    ok grazie provo subito poi ti faccio sapere!

    ciao!

  8. #8

    <%

    dim cnn 'as connection
    dim cm 'as command

    set cnn=createobject("ADODB.Connection")
    set cm = createobject("ADODB.Command")
    cnn.connectionstring="Provider=Microsoft.Jet.OLEDB .4.0;Data Source=C:/InetPub/wwwroot/provecss/inserimento/dbbirrenew2.mdb;Persist Security Info=False;"

    cnn.open


    '**********************************


    Dim oUpload
    Set oUpload = new cUpload
    With oUpload
    .EnabledAspUpload = False
    .EnabledImageSize = TRUE
    .EnabledLog = False
    .AutoRename = False ' <--- modificato da me; prima era True
    .Overwrite = False

    .Load
    .UploadOnly "Images"

    dim rs 'as recordset

    set rs = createobject("ADODB.Recordset")


    rs.cursorlocation=3


    rs.open "SELECT * FROM foto_birre ORDER BY ID ASC",cnn ,1, 3

    if Session("quante_foto") = "nophoto" then

    RS.Addnew()
    RS("ID_birra") = Session("ID_birra")
    RS("url_foto_g") = "http://www.url.it/img/birre/big/00000_00.jpg"
    RS("url_foto_p") = "http://www.url.it/img/birre/small/00000_00.jpg"
    RS.Update()


    end if


    if Session("quante_foto") <> "nophoto" then



    for i= 1 to Session("quante_foto")




    If .Files("Height")>=2200 or .Files("Width")>=2350 then
    Response.write ("Le dimensioni dell'immagine " &_
    .GetFileName() &"
    non sono corrette (" &_
    .Files("Height") &"x" & .Files("Width") &"): File non caricato
    " )

    else
    .SetPath "img\birre\big\"
    .SaveAs(Session("nome_foto" & i))

    RS.Addnew()
    RS("ID_birra") = Session("ID_birra")
    RS("url_foto_g") = "http://www.url.it/img/birre/big/" & Session("nome_foto"& i )
    RS("url_foto_p") = "http://www.url.it/img/birre/small/" & Session("nome_foto"& i )
    RS.Update()


    end if
    next
    RS.Close

    end if

    End With
    Set oUpload = Nothing


    '************************************************* ****************


    io avevo intenzione di fare cosi e replicare per tre volte la parte di codice tra gli asterischi **** ed ovviamente adattarla a ciascuna tabella (ho ridotto a tre le tabelle...)

    solo che mi da errore di pagina non trovata... un errore inspiegabile.. i percorsi son corretti e l'errore si riscontra sia a firewall accesco che spento..

    tu ne sai qualcosa?
    grazie ancora e scusa il disturbo..
    simone

  9. #9
    up..

    ma come faccio a decidere le cartelle nelle quali uploadare i file?

    con il .setpath specifico la cartella ma se ad esempio voglio che il file 3 vada in un altra cartella in che punto devo cambiare il .setpath??

    scusa ancora l'insistenza..
    simone

  10. #10
    chiedo aiuto perchè nn riesco a processare l'upload...

    il codice che uso è quello qua sotto ma mi viene restituito un errore su Stream.Open

    l'errore è il seguente:

    Tipo di errore:
    ADODB.Stream (0x800A0E79)
    L'operazione non è consentita se l'oggetto è aperto.
    /provecss/inserimento/upload/upload.asp, line 789

    chiedo aiuto perchè non riesco proprio a proseguire..

    ciao, simone


    <%
    ' PROCEDURA DI UPLOAD DELLE FOTO GRANDI
    dim cnn 'as connection
    dim cm 'as command

    set cnn = createobject("ADODB.Connection")
    set cm = createobject("ADODB.Command")
    cnn.connectionstring="Provider=Microsoft.Jet.OLEDB .4.0;Data Source=C:/InetPub/wwwroot/provecss/inserimento/dbbirrenew2.mdb;Persist Security Info=False;"

    cnn.open

    Dim oUpload
    Set oUpload = new cUpload
    With oUpload
    .EnabledAspUpload = True
    .EnabledImageSize = TRUE
    .EnabledLog = False
    .AutoRename = False ' <--- modificato da me; prima era True
    .Overwrite = False

    .Load
    .UploadOnly "Images"

    dim rs 'as recordset

    set rs = createobject("ADODB.Recordset")


    rs.cursorlocation=3



    if Session("quante_foto") = "nophoto" then
    rs.open "SELECT * FROM foto_birre ORDER BY ID_foto ASC",cnn ,1, 3

    RS.Addnew()
    RS("ID_birra") = Session("ID_birra")
    RS("url_foto_g") = "http://www.url.it/img/birre/big/00000_00.jpg"
    RS("url_foto_p") = "http://www.url.it/img/birre/small/00000_00.jpg"
    RS.Update()


    end if


    if Session("quante_foto") <> "nophoto" then




    for i= 1 to cInt(Session("quante_foto"))
    While Not .Eof
    rs.open "SELECT * FROM foto_birre ORDER BY ID_foto ASC",cnn ,1, 3



    If .Files("Height")>=2200 or .Files("Width")>=2350 then
    Response.write ("Le dimensioni dell'immagine " &_
    .GetFileName() &"
    non sono corrette (" &_
    .Files("Height") &"x" & .Files("Width") &"): File non caricato
    " )

    else

    .SetPath "img\birre\big\"
    .SaveAs(Session("nome_foto" & i))

    end if




    RS.Addnew()
    RS("ID_birra") = Session("ID_birra")
    RS("url_foto_g") = "http://www.url.it/img/birre/big/" & Session("nome_foto"& i )
    RS("url_foto_p") = "http://www.url.it/img/birre/small/" & Session("nome_foto"& i )
    RS.Update()
    RS.Close


    .Movenext
    wend
    next


    end if


    End With
    Set oUpload = Nothing

    cnn.close

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