PDA

View Full Version : Come posso creare un download diretto a qualsiasi tipo di file?


Albyrich
10-05-2014, 09:09
Salve a tutti i membri del Forum.

Come da titolo, essendo in possesso di uno spazio di file hosting, vorrei creare un download diretto per qualsiasi tipo di file io vi inserisca.

Voi mi direte "Metti direttamente il link del file hostato e partirà subito il download". In effetti questa è una soluzione, ma non vale per tutti i file, come ad esempio quelli musicali, i video, le immagini (e via così…), che invece di essere direttamente scaricati vengono aperti nel browser.

La mia domanda dunque è: come posso forzare il download in modo che anche quei file vengano scaricati nel cliccare sul link?

Avevo trovato una semi-soluzione, ossia quella di creare una pagina qualsiasi in html e di metterci il codice…

<a href="nomedelfile.estensione" download>Download del file!</a>

Grazie all'aggiunta dell'attributo dowload nel tag A, infatti, lo scaricamento viene forzato ed io avrei risolto il problema. Rimane il fatto, però, che per far funzionare questo metodo dovrei sempre linkare prima la pagina in cui ho messo quel codice, e quindi ci sarebbero due passaggi da fare, mentre io desidererei che appena si cliccasse su un link, automaticamente (e senza apertura di altre schede/finestre) iniziasse il download.
Tra le altre cose, ho anche valutato l'alternativa di comprimere i file in un archivio RAR, ma non l'approvo molto, in quanto poi ad ogni download bisognerebbe estrarli e risulterebbe un po' scomodo.

Quindi mi affido a voi: cosa mi suggerite di fare? Ringrazio tutti anticipatamente!

EDIT: Spero vivamente di non aver sbagliato sezione (ammetto di essere stato indeciso tra questa e "Internet e provider"). Qualora l'avessi fatto, vi chiedo scusa sin da subito.

alfonsor
10-05-2014, 09:31
devi forzare il download con gli header http; cerca sul web la stringa "Content-Description: File Transfer"

Dumah Brazorf
10-05-2014, 10:12
Aggiungi la nota: "Per scaricare click destro e scegli Salva come..."

Albyrich
11-05-2014, 17:28
devi forzare il download con gli header http; cerca sul web la stringa "Content-Description: File Transfer"

Come da te consigliato, ho cercato quella stringa e sono riuscito a trovare facilmente la soluzione; in parole povere bisogna ricorrere al PHP. Qualora in futuro dovesse servire a qualcuno, linko QUI (http://www.miniscript.it/articoli/70/forzare_il_download_dei_files.html) il sito che spiega punto per punto come procedere. Personalmente ho utilizzato il metodo della classe ForceDownload.

Grazie mille, sei stato gentilissimo. :)


Aggiungi la nota: "Per scaricare click destro e scegli Salva come..."

Avevo pensato anche a quest'alternativa, ma vale quasi come un secondo passaggio e quindi preferivo evitarla. Grazie anche a te comunque!