Dare ai file scaricati nomi diversi da quelli host
Dare ai file scaricati nomi diversi da quelli host postato il 09/08/2012 12:34:24 nel forum programmazione, open source e hosting
Salve a tutti,
come sempre chiedo cose insolite (e forse inutili) ma vorrei risolvere il mio seguente dilemma:
è possibile far si che quando l'utente salva un file questo venga automaticamente rinominato?
Più tecnicamente: ho un file hostato nella forma abc123456789 cui corrisponde via db un nome (che compare anche nel link per il download del file) e una estensione.
E' possibile far si che quando l'utente avvia il download il file venga salvato nella forma nome.estensione e non in quella abc123456789.
A voi la parola ^^
Pagine → 1
09/08/2012 13:29:00
Potresti creare uno script php d ainserire come target del ling nella parte dell'href del tipo
<a href="download.php?file=abc123456789">Nome file</a>
che una volta richiamato modifichi gli header restituiti della pagina per il download del file con il nome che vuoi.
prova a vedere se questo articolo sull'uso dell'header: Content-Disposition
http://www.jtricks.com/bits/content_disposition.html ↗
09/08/2012 17:02:24
La soluzione di Dyrr è quella giusta.
Ma nel caso in cui ti sia particolarmente noioso o antipatico il fatto che devi cambiare tutti gli URL dei tuoi file (magari per non rompere link esistenti, o semplicemente perchè i link così sono brutti) in aggiunta al suggerimento di dyrr puoi usare un po' della magia di mod_rewrite per fare in modo che il passaggio da uno script sia completamente invisibile agli utenti.
Mettiamo caso che tutti i tuoi file da scaricare siano in una particolare cartella, per esempio la cartelle "download" raggiungibile all'indirizzo http://esempio.it/download
Basterebbe aggiungere una cosa del genere al tuo file .htaccess nella root del sito:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^download/(.*)$ /download.php?file=$1 [L,QSA]
</IfModule>
Ed ecco che gli utenti continuano a digitare http://esempio.it/download/il_mio_file.jpg ma tu invisibilmente fai passare il download attraverso la riscrittura e non si accorgono di passare dallo script download.php
Inoltre URL è più bello così XD
Questo nell'ipotesi che tu stia lavorando su Apache+PHP.
10/08/2012 10:49:10
Ringrazio entrambi per le preziose risposte :-)
Vedrò di studiare il tutto ed eventualmente vi ri-disturberò per ulteriori chiarimenti.
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
War Thunder ↗
RAID Shadow Legends ↗
Cafuné ↗
Raja Dunia ↗