Visualizzazione dei risultati da 1 a 5 su 5

Discussione: ricaricare immagine

  1. #1

    ricaricare immagine

    una domanda stupida, in una delle mie pagine permetto di caricare un logo (che è già visualizzato nella stessa pagina), quando il logo viene salvato viene salvato sempre con lo stesso nome.
    Il mio problema è che quando viene visualizzata ancora l'immagine vecchia. C'è un modo per forzare il caricamento dell'immagine? (senza ricaricare tutta la pagina) :master:

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Non so se ho capito.
    Nella pagina ho una immagine:
    codice:
    <asp:image id="Image1" runat="server" Width="50" Height="50" ImageUrl="r.jpg"></asp:image>
    che inizialmente punta all'immagine r.jpg

    permetto all'utente di fare l'upload di una sua immagine e la memorizzo nel server sempre con lo stesso nome, r.jpg (per lo stesso utente si intende). Al ritorno la pagina deve mostrare la nuova immagine.

    codice:
        Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            'Inserire qui il codice utente necessario per inizializzare la pagina
            If Trim(Request.QueryString("img")).Length > 0 Then
                Me.immagine()
            End If
        End Sub
    
        Private Sub btUpload_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btUpload.Click
            Dim Messaggio$ = ""
    
            If Me.mioFile.PostedFile Is Nothing Then Exit Sub
    
            Try
                'ricavo la dimensione del file
                Dim dimensione% = Me.mioFile.PostedFile.ContentLength
                Messaggio &= "dimensione file: " & dimensione & "
    "
    
                'ricavo il nome del file con percorso
                Dim strFile$ = Me.mioFile.PostedFile.FileName
                Messaggio &= "nome del file con percorso: " & strFile & "
    "
    
                'ricavo il nome del file senza percorso
                Dim strNomeFile$ = Path.GetFileName(strFile)
    
                'se il nome è sempre lo stesso
                strNomeFile = "r.jpg"
                Messaggio &= "nome del file senza percorso: " & strNomeFile & "
    "
    
                Dim strPercorsoFileUpload$ = Server.MapPath("./")
                Messaggio &= "percorso upload: " & strPercorsoFileUpload & "
    "
    
                Dim strPercorsoFileUploadFile$ = strPercorsoFileUpload & "" & strNomeFile
                Messaggio &= "nome del file trasferito con percorso: " & strPercorsoFileUploadFile & "
    "
    
                Dim strMessaggioFinale$ = ""
                Me.mioFile.PostedFile.SaveAs(strPercorsoFileUploadFile)
                Me.lbEsito.Text = "Upload avvenuto correttamente
    
    " & Messaggio & "</p>"
    
                Me.Image1.ImageUrl = Request.Url.AbsolutePath & "?img=xyz"
    
    
            Catch er As Exception
                Me.lbEsito.Text = er.ToString & "
    
    " & Messaggio & "</p>"
            End Try
    
        End Sub
    
        Private Sub immagine()
            'Inserire qui il codice utente necessario per inizializzare la pagina
            Response.Expires = -1
    
            ' scarico un file di nome file.zip 
            Dim strPath As String = Server.MapPath("r.jpg")
    
            Dim file As FileInfo = New FileInfo(strPath)
            ' verifica esistenza 
            If file.Exists Then
                ' imposta le headers 
                Response.Clear()
                Response.AddHeader("Content-Disposition", "attachment; filename=" & file.Name)
                Response.AddHeader("Content-Length", file.Length.ToString())
                Response.ContentType = "application/octet-stream"
    
                ' leggo dal file e scrivo nello stream di risposta 
                Response.WriteFile(strPath)
                Response.End()
            Else
                Response.Write("Impossibile scaricare il file.")
            End If
    
        End Sub
    a me funziona

    Pietro

  3. #3
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    prova anche a mettere:
    <input id="mioFile" runat="server" type="file" NAME="mioFile" onchange="document.getElementById('Image1').src=(' Image1').src=this.value;">

    così l'utente vedrà subito l'immagine scelta prima di mandarla al server
    Pietro

  4. #4
    Questa soluzione però mi mostra solo il file, se nella pagina c'è altro contenuto mi chiede di salvare il file :master:
    Una cosa che ho trovato e che funziona è mettere una querystring sull'imagine sempre diversa (la data). è unpo sporca ma fà il suo dovere

    La seconda idea è buona

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    hai ragione, funziona bene come hai detto tu.
    Ho fatto un esempietto e funziona in 3 modi diversi:
    codice:
    <asp:image id="Image1" runat="server" Width="300" ImageUrl="r.jpg"></asp:image>
    <asp:image id="Image2" runat="server" Width="300" ImageUrl="img.aspx"></asp:image>
    [img]r.jpg?t=<%=now().Ticks%>[/img]
    Pietro

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.