Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Reiuky
    Registrato dal
    Jul 2008
    Messaggi
    371

    Tornare al sito finito di scaricare il file

    Buongiorno

    Il mio programma fa scaricare un file con questa serie di istruzioni
    Codice PHP:
            ob_end_clean();
            
    header('Content-Transfer-Encoding: binary');
            
    header('Accept-Ranges: bytes');
            
    header("Content-type: application/excel");
            
    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
            
    header('Content-Encoding: none');
            
    header("Content-Disposition: attachment; filename=\"".$this->nomeFile."\""); 
    e poi una serie di echo che mi danno il contenuto del file (che viene creato sul momento)

    Però una volta scaricato il file, mi trovo nella stessa pagina di partenza, che non è più valida. Dovrei fare una redirect alla pagina precedente o a un'altra pagina, ma non trovo il modo.

    C'è un modo per farlo o un modo più corretto di scaricare quel file?

    Grazie.
    Ultima modifica di Reiuky; 28-04-2016 a 10:55
    A volte penso che, nel darci l'intelletto, la natura sia stata più sadica che generosa.

  2. #2
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    non so se funzioni perché non ci ho mai provato, ma proverei a mettere un header("location: ") in coda e rimandare ad un'altra pagina

  3. #3
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Dato che ci sono degli echo per inviare il file, penso che gli direbbe "header already sent".

    Provare alla fine a stampare un redirect javascript?

  4. #4
    Utente di HTML.it L'avatar di Reiuky
    Registrato dal
    Jul 2008
    Messaggi
    371
    Ho provato con l'header('location ma non mi scarica il file: mi rimanda immediatamente alla location.

    Il redirect javascript ho paura che me lo scriva all'interno del file.
    A volte penso che, nel darci l'intelletto, la natura sia stata più sadica che generosa.

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,445
    Ma se invece fai il contrario?
    Prima reindirizzi l'utente alla pagina che vorresti fargli raggiungere dopo il download e poi avvii il download.
    In pratica è quello che fanno in genere i siti da cui puoi scaricare dei file, su una pagina c'è il pulsante "Download", ma in realtà ti rimanda ad un'altra pagina dove effettivamente viene scaricato il file, quella dove dicono "Il download dovrebbe iniziare entro 5 secondi".

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 © 2024 vBulletin Solutions, Inc. All rights reserved.