Dateidownload ohne HEADER
Matthias
- php
Hallo,
ist es möglich einen Dateidownload ohne den header() Befehl zu realisieren. Ich habe nämlich, aufrgund meines templates schon Ausgaben vor dem header() Befehl stehen.
Kennt jemand das Problem?
Und hat jemand eine Idee, wie ich dieses lösen kann?
Danke & Gruß aus Braunschweig
Matthias
Hallo Matthias,
ist es möglich einen Dateidownload ohne den header() Befehl
zu realisieren. Ich habe nämlich, aufrgund meines templates
schon Ausgaben vor dem header() Befehl stehen.
Ja: linke auf die Datei.
Mal im Ernst: wenn du die Datei per PHP an den User zurueck
gibst, darfst du in keinem Fall vorher etwas ausgeben. Egal,
ob du Header() benutzt oder nicht.
Gruesse,
CK
Moin,
ein wenig merkwürdig ist die Konstellation ja schon, sofern die Ausgaben nicht durch Fehler oder z.B. Sessiondaten verursacht werden.
Wenn sich das aber gar nicht mehr verhindern läßt, dann solltest Du vielleicht überlegen, das ganze mal mit OB (Output Buffering) ein wenig zu steuern, denn damit läßt sich verhindern, daß PHP bzw. der Webserver bereits Header an den Client senden, bevor wir das explizit auch wollen (kann auch nützlich für Leute sein, die z.B. nach dem Starten einer Session noch einen Redirect über header() durchführen wollen).
Die maßgeblichen Funktionen:
ob_start()
ob_get_contents()
und
ob_end_flush() bzw. ob_end_clean()