Sto seguendo quel metodo, il tutto funziona tranne per alcune cose.
Io volevo mettere tutto in una pagina (download.php?id_file=1) dove c'è il controllo del file (esistenza) e dell'accesso come utente registrato se è tutto ok si parte con l'invio al browser dopo tot secondi, mostrando un messaggio tipo "il download partirà tra poco". Siccome non sono riuscito a fare nulla in questo modo senza creare altre pagine ho dovuto creare un altro file (download_2.php) a cui la pagina del download.php manda in refresh dopo tot secondi e fa partire il download via readfile di php.
I problema è che:
in questo modo se una persona va direttamente a download_2.php con la stringa via get esatta scarica il file senza passare per le mie pagine (quindi una sorta di download diretto)
facendo in questo modo che funziona , SOLO SU IE quando la pagina viene inviata a download_2.php da download_php il download non parte, esce un messaggio di errore "impossibile scaricare download_2.php dal server" in una finestra. Gli da fastidio session_start() all'inizio della pagina, se lo tolgo va ma in questo io senza sessione non potrò controllare se l'utente è autenticato!
Se ci fosse un modo per partire l'istruzione readfile (con gli header) con un ritardo nella stessa pagina senza mandare tutto ad un'altra sarebbe perfetto!