Ciao a tutti,
Ho un problema che mi sta facendo scervellare e del quale non riesco a travare soluzione valida...
In sostanza devo fare scaricare dei file "protetti"
Per farlo uso il comando header() e readfile() con i quali genero un'header che forzi il download e sparo il file in "streaming"
il codice è questo:
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header('Content-Description: File Transfer');
header('Content-Type: '.$typeFile);
header('Content-Length: ' . filesize($filename));
header("Content-Disposition: attachment; filename=".$filenameArray[count($filenameArray)-1]);
readfile($filename);
La variabile $typeFile viene impostata come "application/..." o "image/..." a seconda logicamente del tipo di file...
Ora... il problema è che con quel fantastico browser di Internet Explorer.. versioni vecchiotte... saltano fuori i problemi più disparati...
Il più comune è che mi scarica ad esempio uno zip... danneggiato... (i problemi maggiori li ho con la versione 5.5 di IE e quando scarico archivi compressi)
Ho già letto in giro che il problema è legato ad unbug di quelle versioni di explorer che sostanzialmente se ne infischiano dei parametri impostati da header() generando così danni ai file scaricati che si ritrovano senza intestazione, o con intestazioni forzate dal browser stesso....
qualcuno ha già avuto problemi di questo tipo... e se si come l'avete risolto?

Rispondi quotando