Wenn eine Datei im Download-Modul angeklickt wird, öffnet sich ein Win-Fenster welches fragt ob man die Datei gleich öffnen oder speichern will.
Bei "speichern" wird die Datei direkt (und korrekt) auf die Disk geschrieben.
Wird jedoch "öffnen" gewählt, wird via Header-infos die jeweilig notwendige Applikation gestartet.
Nun kommt's. z.B. ein xxx.pdf startet zwar den Acrobat-Reader - der aber die Datei nicht finden kann. Dieser Fehler tritt mit IE6 auf.
Eine Analyse zeigt, das der Script "module/download/get_file.php" zuständig ist.
In Zeile 69 - 78 steht: ------------------------------------------------------------
$filename = "$act_folder/$file";
// Passenden Datentyp erzeugen.
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=\"$file\"");
// Datei ausgeben.
readfile($filename);
?>
Sollte aber so aussehen: -----------------------------------------------------------------
$filename = "$act_folder/$file";
// Passenden Datentyp erzeugen.
header("Content-Type: application/octet-stream");
header('Expires: 0');
header('Pragma: cache');
header('Cache-Control: private');
header("Content-Disposition: attachment; filename=\"$file\"");
// Datei ausgeben.
readfile($filename);
?>
Also IE6 hat im Zusammenhang mit PDF's ein Cache-Problem.
Diese drei header-Zeilen lösen dieses Problem und der AcroReader zeigt die Datei an.
Gruss Fredi
PS: Ich hoffe, ihr werft mich noch nicht aus dem Forum
