Back to top

Autore Topic: Download File da Server  (Letto 980 volte)

Offline d.abstego

  • Nuovo arrivato
  • *
  • Post: 13
  • Sesso: Maschio
  • Semplicità Creatività Innovazione
    • Mostra profilo
Download File da Server
« il: 13 Mag 2016, 15:46:39 »
Buongiorno!


Ho sviluppato un report per la gestione dei documenti. Il cliente che si collega visualizza un report....seleziona i record che interessano e decide di effettuare il download dei file associati. Ogni record corrisponde ad un file in una specifica cartella del server.


Ho utilizzato un script PHP che posto di seguito



header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="'.basename($server_file).'"');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($server_file));
ob_clean();
flush();
readfile($server_file);
exit;

Dove la variabile $server_file contiene il path completo del file......
La domanda è : Perchè (utilizzando qualsiasi browser) non parte il download oppure NON si apre la popup che mi chiede dove salvare il file?


C'è quaclcosa di sbagliato in questo script? Avete qualche idea o consiglio per indicarmi una soluzione?






GARZIE!!!!!!!!!!!

Offline giovi

  • Instancabile
  • ******
  • Post: 9835
  • Sesso: Maschio
    • Mostra profilo
Re:Download File da Server
« Risposta #1 il: 13 Mag 2016, 15:49:07 »
Non è che prima di settare questi header hai già stampato qualcosa? Gli header sono permalosi sotto questo punto di vista

Offline d.abstego

  • Nuovo arrivato
  • *
  • Post: 13
  • Sesso: Maschio
  • Semplicità Creatività Innovazione
    • Mostra profilo
Re:Download File da Server
« Risposta #2 il: 13 Mag 2016, 15:53:02 »
Per stampa intendi quale istruzione "echo" qua e la?..........qualcosa c'è...ma nel caso come ne esco?


Oppure joomla offre qualche istruzione/libreria per chiamare più agilmente la funzione di download?

Offline giovi

  • Instancabile
  • ******
  • Post: 9835
  • Sesso: Maschio
    • Mostra profilo
Re:Download File da Server
« Risposta #3 il: 13 Mag 2016, 15:57:09 »
si, intendo gli echo e qualunque altro tipo di contenuto html.


Gli header sono ciò che il server manda prima ancora del contenuto della pagina. Nel momento in cui hai mandato al browser anche un solo tag o carattere è già troppo tardi per inviare altri header o sovrascrivere quelli esistenti.


Non credo che ci siano altre soluzioni per mandare in stream un file, se riscontri questo problema probabilmente stai sbagliando l'approccio con il mvc di joomla.

 



Web Design Bolzano Kreatif