[TYPO3-german] PDF Download in Typo3
Markus Deckmann
Markus.Deckmann79 at web.de
Sun Mar 9 19:00:27 CET 2008
Hi Leute,
derzeit plage ich mich mit einem ziemlich ärgerlichem Problem in Typo3
rum und hoffe das Ihr mir helfen könnt. Leider haben meine Recherchen in
Google und Typo3-Foren nicht wirklich brauchbare Ergebnisse zu Tage
gefördert was dazu führt das ich keine Ahnung habe wie ich das Problem
am besten angehen könnte.
Problembeschreibung:
--------------------
Derzeit binde ich auf einer Webseite ein bereits fertiges Script als
PHP-Content-Element in eine Seite ein. Dieses ermittelt zuerst
Benutzerdaten unterschiedlicher Art über ein Formular, auf Basis dessen
wird eine weitere Auswahl generiert und nach Auswahl einer oder mehrerer
dieser Alternativen wird ein oder mehrer Downloadlinks angeboten.
Der Download erfolgt dabei nicht direkt sondern über das selbe
PHP-Script welches dabei einen Parameter x mitbekommt auf Basis dessen
der Dateiname usw. bestimmt wird.
Der eigentliche Download erfolgt dann über die folgenden paar Zeilen um
den Browser anzuweisen die Datei für den Download zur Verfügung zu stellen:
---------------------------------------
PHP-Funktion für den Download der Datei
---------------------------------------
private function _GetCatalogFile() {
if
(file_exists(PROGRAM_PATH."catalogs/".strtolower($_GET['catalog']).".pdf"))
{
$DownloadCompleteFile =
PROGRAM_PATH."catalogs/".strtolower($_GET['catalog']).".pdf";
$DownloadFilename = strtolower($_GET['catalog']).".pdf";
header('Content-type: application/pdf');
header("Content-Disposition: attachment;
filename=\"".$DownloadFilename."\"");
readfile($DownloadCompleteFile);
}
return -1;
}
---------------------------------------
Das ganze funktioniert bis zu den Links die in Folge dann diese Funktion
aufrufen auch korrekt und es öffnet sich der "Speichern unter"-Dialog
des Browsers mit dem angegebenen Dateinamen usw.
Sobald man die Datei heruntergeladen hat und sie versucht zu öffnen
erhält man allerdings die Meldung das die Datei nicht geöffnet werden
kann weil sie nicht dem richtigen Typ entspricht oder beschädigt ist.
Nach einer Ansicht der heruntergeladenen Datei hat sich dann auch
herausgestellt wieso der PDF-Reader diesen Fehler anzeigt. In der Datei
befinden sich vor und hinter den eigentlichen PDF-Quelldaten der gesamte
HTML-Quellcode der voraussichtlich durch die Typo3-FE-Rendering vor der
Ausgabe im Browser erzeugt wird.
Problem:
--------
Wie bringe ich jetzt Typo3 dazu diese Ausgabe vor und nach den
eigentlichen PDF-Daten zu unterlassen?
Ich hoffe mein Problem ist genau genug beschrieben um nachvollziehen zu
können worin der Fehler besteht. Wenn noch Fragen sind dann bitte
nachfragen, bin gerne bereit weitere Informationen dazu zu geben wenn
sich dadurch das Problem schnell lösen lässt.
Ciao Markus
More information about the TYPO3-german
mailing list