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

    "Save target as" su onClick()...

    Salve a tutti,

    non so se quello che cerco di fare è una cosa possibile, comunque tentar non nuoce...
    Praticamente ho dei link che come "href" hanno il path fisico ad un'immagine.
    Ovviamente se le immagine sono gif, jpg o png cliccando mi vengono aperte sul browser. :master:
    Secondo voi è possibile (intercettando l'onClick()) forzare il "Save target as" e non far aprire il file?

    Ciao e grazie.
    La vita e' a colori, ma il bianco e nero e' piu' realistico...

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    3,259
    in generale, no

  3. #3
    Utente di HTML.it L'avatar di morphy79
    Registrato dal
    Jun 2004
    Messaggi
    1,568
    credo si possa con il download ADODB.Stream... però non siamo più in javascript ma in asp...
    con javascript punti ad una pagina, passandogli il path dell'immagine e questa ti fa scaricare anzichè aprire...

    Ti riporto l'articolo :

    Lo script seguente permette essenzialmente di:
    1. effettuare il download di files senza mostrarne il reale indirizzo.
    2. scaricare anche file di tipo DOC, PDF etc. che normalmente si aprirebbero nella finestra del browser.

    Per default lo script cerca il file da scaricare nella sua stessa cartella (cioè nella cartella dove risiede lo script, in questo caso la root del sito). Nel caso i files per il download si trovassero invece in una cartella apposita (consigliato) basta cambiare la riga seguente:
    - objStream.LoadFromFile Server.MapPath(strFileName)
    con quest'altra:
    - objStream.LoadFromFile Server.MapPath("nomecartella/" & strFileName)

    Ecco il listato dello script:
    <%
    Dim objStream, strFileName
    strFileName = Request.QueryString("file")
    Set objStream = Server.CreateObject("ADODB.Stream")
    objStream.Type = 1 ' adTypeBinary
    objStream.Open
    objStream.LoadFromFile Server.MapPath(strFileName)
    ' Istruiamo il browser sul tipo di file
    Response.AddHeader "Content-Disposition", "attachment; filename=" & strFileName
    Response.ContentType = "application/octet-stream"
    Response.BinaryWrite objStream.Read
    objStream.Close
    Set objStream = Nothing
    %>

    Ed ecco un esempio di utilizzo (presuppone che lo script stia nel file "download.asp"):
    Scarica il file

  4. #4
    A parte il fatto che uso Java, pensavo che esistesse qualcosa di più veloce senza dover ricorrere allo streaming del file...

    Grazie comunque...
    La vita e' a colori, ma il bianco e nero e' piu' realistico...

  5. #5
    Nessuna idea???
    La vita e' a colori, ma il bianco e nero e' piu' realistico...

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    + che altro non c' è modo (almeno che io sappia) senza ricorrere ad un linguaggio lato server che setti opportuni header
    ciao

  7. #7
    OK...
    Grazie Xinod.

    La vita e' a colori, ma il bianco e nero e' piu' realistico...

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.