Download-Skript mit falscher Endung im Mozilla 1.0
Curt
- php
0 Balazs
Hallo,
Ich hab ein kleines Download-Skript entworfen, das mit download.php?file=test.zip beispielsweise aufgerufen wird.
Das Skript selbst sieht so aus
<?
$Filename = basename($HTTP_GET_VARS["file"]);
$MIMEType = "application/octet-stream";
if (substr($Filename,-4) == ".zip") $MIMEType = "application/zip";
$completeFilePath = '../../../freeDown/sticker/'.$Filename;
if (file_exists("$completeFilePath")) {
$Datei = fopen($completeFilePath,'rb');
header("Content-Disposition: attachment; filename=$Filename");
header("Content-Type: $MIMEType");
header("Content-Description: compressed file");
header("Content-Length: ".filesize($completeFilePath));
header("Pragma: no-cache");
header("Expires: 0");
fpassthru($Datei);
}
exit;
?>
Das ganze funktioniert wunderbar gut, bis auf den Mozilla 1.0, der zeigt nicht den korrekten Dateinamen an im Download-Dialog steht dann "test.zip.php". Die Seite auf der das ganze eingesetzt werden soll ist für Kinder gedacht, von daher sollte dort lieber nicht PHP als endung stehen. Hat jemand Ideen oder Vorschläge dazu, wäre super.
Gruss
Curt
Hallo Curt,
also auf Anhieb kann ich nur einen Fehler entdecken:
if (file_exists("$completeFilePath")) {
diese Zeile müsste doch
if (file_exists($completeFilePath)) {
heißen, also ohne Anführungszeichen. Probier's mal, vielleicht klappt's jetzt...
Schöne Grüße,
Balazs