Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 33

Discussione: Aiuto con l'upload

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    44

    Aiuto con l'upload

    Ciao ragazzi.
    Sto cercando di fare l'upload di un immagine nel campo immagine di una tabella di un database in Access.
    Ho utilizzato l'oggetto fileUpload e l'ho implementato in questa maniera:

    codice:
    Protected Sub Inserisci_ServerClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Inserisci.ServerClick
    
            If Not Upload.PostedFile Is Nothing And Upload.PostedFile.ContentLength > 0 Then
                Dim fn As String = System.IO.Path.GetFileName(Upload.PostedFile.FileName)
                Dim SaveLocation As String = Server.MapPath("..\..\App_Themes\Tema\Images") & "\" & fn
                Try
                    Upload.PostedFile.SaveAs(SaveLocation)
                    CaricamentoSi.Visible = True
                    Errore.Visible = False
                Catch Exc As Exception
                    Errore.Visible = True
                    CaricamentoSi.Visible = False
                End Try
            Else
                Response.Write("Please select a file to upload.")
            End If
    
        End Sub
    dove "Inserisci" è il pulsante da cliccare dopo il caricamento dell'immagine, da una cartella del computer, fatto con il pulsante fileUpload (che nel mio caso si chiama "Upload").

    Ora vi chiedo come faccio a cambiare la stringa "Server.MapPath("..\..\App_Themes\Tema\Images" ) & "\" & fn" e scrivere che l'immagine caricata la deve salvare nel campo "Immagine" della tabella "Imbarcazioni" del mio database Access????

    Per favore qualcuno che mi aiuti perchè sto impazzendo..non riesco proprio a capire come fare

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887

    Re: Aiuto con l'upload

    Originariamente inviato da fafy85
    Ora vi chiedo come faccio a cambiare la stringa "Server.MapPath("..\..\App_Themes\Tema\Images" ) & "\" & fn" e scrivere che l'immagine caricata la deve salvare nel campo "Immagine" della tabella "Imbarcazioni" del mio database Access????
    Cosa intendi esattamente ? Nel campo "immagine" deve salvare il percorso dell'immagine che l'utente sceglie ?

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    44
    Cosa intendi esattamente ? Nel campo "immagine" deve salvare il percorso dell'immagine che l'utente sceglie ?
    Si esattamente...

  4. #4
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    come ti ho risposto nell'altro thread, è una semplice connessione ad un DB access.
    trovi esempi in questo forum ed un po' dappertutto in rete

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    44
    Ho fatto un giro sulla rete ma gli esempi che ci sono non riesco a capirli perchè purtroppo non sono esperta in asp.net, sono una principiante e trovandomi di fronte queste cose così complicate vado nel pallone
    Per favore potresti aiutarmi nella realizzazione del codice???? cioè aiutandomi a modificare quello mio che ho postato qui?????

  6. #6
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    In una tabella con tre campi testo, ad esempio:

    codice:
            Dim ConnString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("miodb.mdb")
            Dim cn As New System.Data.OleDb.OleDbConnection(ConnString)
            cn.Open()
            Dim comando As New System.Data.OleDb.OleDbCommand
            comando = New System.Data.OleDb.OleDbCommand("INSERT INTO NOMETABELLA (CAMPO1,CAMPO2,CAMPO3) VALUES ('VALORE1','VALORE2','VALORE3')", cn)
            Try
                Dim affected As Integer
                affected = comando.ExecuteNonQuery()
                If affected > 0 Then
                    Response.Write("Inserimento OK")
                End If
            Catch ex As System.Data.OleDb.OleDbException
                Response.Write("Si è verificato un errore: " & ex.Message)
            Finally
                cn.Close()
                comando.Dispose()
            End Try
    ma questa illustrata è la tecnica più rudimentale che esista, dai una occhiata anche a questa classe http://msdn.microsoft.com/it-it/libr...cessdatasource(VS.80).aspx

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    44
    stavo pensando, non ci sarebbe un modo per salvare il percorso dell'immagine inserita e poi richiamare ovviamente questo variabile dove stato inserito il percorso e memorizzarla nel database??? si può fare questo??? se si cosa dovrei inserire nel mio codice postato allì'inizio di questo post?

  8. #8
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Il percorso mi sembra tu ce l'abbia nella variabile "SaveLocation".

    Quando hai finito l'operazione di upload (dopo "End Try") puoi chiamare il codice che ti ho scritto, ovviamente con le oppurtune modifiche per la tua tabella ed il tuo db access (cioè la INSERT giusta ed il giusto nome del tuo DB).

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    44
    ma sinceramente il codice che mi hai postato tu non lo capisco
    Lo so scusami ma come ti dicevo prima sono una frana in asp.net..ho iniziato da pochissimo e domani ho la consegna del progetto e sono disperata con questo upload

  10. #10
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    devi soltanto modificare il nome del db access (il percorso anche, eventualmente) e l'istruzione di insert. Com'e' strutturata la tua tabella ?

    codice:
    Protected Sub Inserisci_ServerClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Inserisci.ServerClick
    
            If Not Upload.PostedFile Is Nothing And Upload.PostedFile.ContentLength > 0 Then
                Dim fn As String = System.IO.Path.GetFileName(Upload.PostedFile.FileName)
                Dim SaveLocation As String = Server.MapPath("..\..\App_Themes\Tema\Images") & "\" & fn
                Try
                    Upload.PostedFile.SaveAs(SaveLocation)
                    CaricamentoSi.Visible = True
                    Errore.Visible = False
                Catch Exc As Exception
                    Errore.Visible = True
                    CaricamentoSi.Visible = False
                End Try
    
    
               Dim ConnString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("miodb.mdb")
               Dim cn As New System.Data.OleDb.OleDbConnection(ConnString)
               cn.Open()
               Dim comando As New System.Data.OleDb.OleDbCommand
               comando = New System.Data.OleDb.OleDbCommand("INSERT INTO Vendita (Immagine, Descrizione, Categoria, Tipo, Prezzo) VALUES (SaveLocation,'x','x','x',0)", cn)
               Try
                Dim affected As Integer
                affected = comando.ExecuteNonQuery()
                If affected > 0 Then
                    Response.Write("Inserimento OK")
                End If
               Catch ex As System.Data.OleDb.OleDbException
                Response.Write("Si è verificato un errore: " & ex.Message)
               Finally
                cn.Close()
                comando.Dispose()
               End Try
            Else
                Response.Write("Please select a file to upload.")
            End If
        End Sub
    Al posto delle x e dello 0 mettici i valori che devi mettere (hai postato solo una parte del codice, non so da dove prendi gli altri valori da inserire). Prova cosi'...

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.