Hallo zusammen,
ich sitze schon fast seit einer Woche am folgenden Problem:
Ich will dem Benutzer eine pdf-Datei als Download zur Verfügung stellen. Sobald der Benutzer auf einen pdf-Link klickt, soll ein Download-Fenster aufgehen und nicht im Browser automatisch darstellen.
Ich hab folgenden Code aus dem Netz gefunden und angepasst:
PHP-Code:
<?php
$file = 'test.pdf';
$dir = '/download/';
$type = 'application/pdf';
if(!empty($file) && !preg_match('=/=', $file)) {
if(file_exists ($dir.$file)){
download_file($file, $dir, $type);
}
else{
echo "datei existiert nicht";
}
}
function download_file($file, $dir, $type) {
$fsize = filesize($file); //Dateigroesse
header("Content-Type: " .$type);
header("Content-Length: ".$fsize);
header("Content-Disposition: attachment; filename=\"$file\"");
readfile($dir.$file);
}
?>
Das Problem ist nun, dass er zwar die PDF findet und auch downloadet, aber wenn ich die Datei öffnen will, sagt mir Acrobat Reader, dass die Datei nicht gelesen werden kann, da sie beschädigt oder blabla...ist.
Wenn ich aber eine zip-Datei mit dem gleichen php-Code downloade, dann kann ich die Datei öffnen.
Was mache ich falsch? Bin schon echt am verzweifeln.
verzweifeltes mentos