Hi, Diesem php-Code erzeugt eine auswahlliste , Man Wählt ein Datei aus , Um zu öffnen oder Speichern, Es handelt sich um zip Dateien , wenn ich versuche die Datei zu öffnen
bekomme folgendes Fehler " Der ZIP-komprimierte Ordner ist
ungültig oder beschädigt" , bei direkte Mausklick öffnet
sich die Datei ganz Normal, Nur mit hilfe dieses Code funktioniert nicht
, was könnte Falsch sein?
Danke in Voraus.
bekomme folgendes Fehler " Der ZIP-komprimierte Ordner ist
ungültig oder beschädigt" , bei direkte Mausklick öffnet
sich die Datei ganz Normal, Nur mit hilfe dieses Code funktioniert nicht
, was könnte Falsch sein?
Danke in Voraus.
PHP:
<!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Test</title>
</head>
<body>
<form method="get" action="<?php echo $PHP_SELF ?>">
<select name="download" >
<option>file</option>
<option>file2</option>
<option>file3</option>
</select>
<input type="submit" name="submit" value="sumbit">
</form>
<?php
// $download sei Bezeichner für die zu ladende datei
if (isset($_GET['download'])){
$download=$_GET['download'];
// Dioeses Verzeichnis liegt außerhalb des Document Root und
// ist nicht per URL erreichbar.
$basedir="home/www/download";
// Übersetzung von Download-Bezeichner in Dateinamen.
$dateiliste=array(
"file"=> "area1/datei1.zip",
"file2"=>"area1/datei2.zip",
"file3"=>"area2/datei1.zip"
);
// Einbruchsversuch abfragen.
if (!isset($dateiliste[$download])) die ("Datei $download nicht
vorhanden.");
// Vertrauenswürdigen datei erzeugen.
$datei=sprintf("%s/%s", $basedir, $dateiliste[$download]);
// Passenden Dateitype erzeugen
header("Content-Type: application/octet-stream");
// Passende Dateiname im Download-Requester vorgeben,
// z.b. den Original - Dateinamen
$speicher_name = basename($dateiliste[$download]);
header("Content-Disposition: attachment; filename=\"$speicher_name\"");
// Datei ausgeben.
readfile($datei);
};
?>
</body>
</html>
Zuletzt bearbeitet: