Servus Community!
Ihr seid meine letzte Hoffnung. Stundenlang durchsuche ich bereits das Forum nach einer endlich erlösenden Antwort, aber ohne Erfolg...
Szenario: Durch eine DB Abfrage wird dynamisch ein PDF Dokument erzeugt, welches in einem Verzeichnis mit chmode 777 gespeichert wird. Das geht alles ziemlich gut! - Nur, jetzt wollte ich gerne dem Benutzer ersparen auf einen weiteren Link zu klicken, damit er die Rechnung einsehen kann, sondern gleich ein Downloadpopup erscheinen lassen, wie es allseits bekannt ist.
Nun, habe ich entsprechend die header infos für den Browser angepasst und da es sich bei dem PDF erstellenden Skript um ein include handelt, habe ich diese Info auf die geladene Seite an die allererste Stelle in eine kleine Funktion geschrieben:
function DPDF($DATEI){
$fileName="facturas/".$DATEI; // Dateiname funzt - das habe ich schon per echo getestet!!!
header("Content-Disposition: attachment; filename=$fileName");
header("Content-Type: application/octet-stream");
header("Content-Length: ".filesize("$fileName"));
header("Pragma: no-chache");
header("Expires: 0");
$fp=fopen("$fileName","r");
print fread($fp, filesize("$fileName"));
fclose($fp);
exit();
}
Nur bekomme ich immer wieder die gleiche Fehlermeldung:
Cannot add header information - headers already sent by... und danach die Ausgabe des PDF Dokumentes kryptisch (Buchstabensalat...)
Nur in der gemeldeten Fehlerzeile werden keine header gesendet ..???!
Wer hat den entscheidenen Tipp für mich, denn ich bin völlig ratlos ?
Danke für Alles
Christian
Ihr seid meine letzte Hoffnung. Stundenlang durchsuche ich bereits das Forum nach einer endlich erlösenden Antwort, aber ohne Erfolg...
Szenario: Durch eine DB Abfrage wird dynamisch ein PDF Dokument erzeugt, welches in einem Verzeichnis mit chmode 777 gespeichert wird. Das geht alles ziemlich gut! - Nur, jetzt wollte ich gerne dem Benutzer ersparen auf einen weiteren Link zu klicken, damit er die Rechnung einsehen kann, sondern gleich ein Downloadpopup erscheinen lassen, wie es allseits bekannt ist.
Nun, habe ich entsprechend die header infos für den Browser angepasst und da es sich bei dem PDF erstellenden Skript um ein include handelt, habe ich diese Info auf die geladene Seite an die allererste Stelle in eine kleine Funktion geschrieben:
function DPDF($DATEI){
$fileName="facturas/".$DATEI; // Dateiname funzt - das habe ich schon per echo getestet!!!
header("Content-Disposition: attachment; filename=$fileName");
header("Content-Type: application/octet-stream");
header("Content-Length: ".filesize("$fileName"));
header("Pragma: no-chache");
header("Expires: 0");
$fp=fopen("$fileName","r");
print fread($fp, filesize("$fileName"));
fclose($fp);
exit();
}
Nur bekomme ich immer wieder die gleiche Fehlermeldung:
Cannot add header information - headers already sent by... und danach die Ausgabe des PDF Dokumentes kryptisch (Buchstabensalat...)
Nur in der gemeldeten Fehlerzeile werden keine header gesendet ..???!
Wer hat den entscheidenen Tipp für mich, denn ich bin völlig ratlos ?
Danke für Alles
Christian
Kommentar