Hallo Forum,
ich habe ein seltsames Problem und kann mir die Ursache einfach nicht erklären.
In meinem Script wird per FPDF eine dynamische PDF Datei mit dem Parameter "F" erzeugt, also auf dem Server abgelegt. Später kann der User sich diese per Download Button abholen. Das funktionierte absolut reibungslos, bis ich eine Änderung in der Generierung des PDF vorgenommen habe (einige Abzweigungen per IF / ElseIF / Else)
Seitdem ist das PDF im Serververzeichnis so wie es sein soll, aber der Datenstream an den Client ist "verstümmelt" und kann nicht gelesen werden.
Ursache: Der HTML Inhalt der Seite wird neuerdings mitgesendet.
Folgender Code soll die Datei senden, davor und dahinter ist HTML mit
ob_start() und ob_end_flush()
Ich nehme mal an das mein Code schlecht ist und vorher eher zufällig funktioniert hat. Habe mit den Befehlen ob_clean(), _flush() usw herumexperimentiert, aber das gibt nur Header Fehlermeldungen.
Schonmal Danke fürs lesen
ich habe ein seltsames Problem und kann mir die Ursache einfach nicht erklären.
In meinem Script wird per FPDF eine dynamische PDF Datei mit dem Parameter "F" erzeugt, also auf dem Server abgelegt. Später kann der User sich diese per Download Button abholen. Das funktionierte absolut reibungslos, bis ich eine Änderung in der Generierung des PDF vorgenommen habe (einige Abzweigungen per IF / ElseIF / Else)
Seitdem ist das PDF im Serververzeichnis so wie es sein soll, aber der Datenstream an den Client ist "verstümmelt" und kann nicht gelesen werden.
Ursache: Der HTML Inhalt der Seite wird neuerdings mitgesendet.
Folgender Code soll die Datei senden, davor und dahinter ist HTML mit
ob_start() und ob_end_flush()
PHP-Code:
<php
header('Expires: Thu, 19 Nov 1981 08:52:00 GMT');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: no-cache');
header("Content-Type : application/pdf");
header("Content-Disposition: attachment; filename=Meine_Rechnung.pdf");
$regex_int ='/[^0-9]/';
$which = preg_replace ($regex_int,'',$_POST['file']);
$target_file = "rechnungen/Rechnung_Nr".$which.".pdf";
$connect_file = fopen($target_file, 'r');
$file_stream = fread($connect_file, filesize($target_file));
fclose($connect_file);
echo $file_stream;
?>
Schonmal Danke fürs lesen

Kommentar