2Danke
ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
606
606
EMPFEHLEN
-
Hallo,
ich hätte mal wieder eine Frage.
Ich benutze für mein php-Script die Header-Funktionen um die Daten von einer Mysql-DB als Datei auszugeben.
Da ich am Anfang über die Dateiausgabe keine Ahnung hatte, habe ich einfach gegoogelt, wie man es macht und glücklicherweise
habe ich die unten stehenden Header-Funktionen gefunden und einfach ausprobiert. Es funktioniert super, aber ich habe wievor keine Ahnung,
was Header eigentlich ist und was die ganzen Parametern innerhalb der Klammern machen. Ich habe in verschiedenen Tutorials und auch in php.net
die Artikeln über Header gelesen, leider konnte ich nicht begreifen. Kann jemand mir bitte eine Webseite empfehlen, wo über Header verständlich erklärt ist
oder kann jemand mir sagen was bei den vorliegenden Funktionen gemacht werden.
danke voraus
PHP-Code:header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=db.csv");
header("Pragma: no-cache");
header("Expires: 0");
-
18.05.10 01:03 #2Mein Blog - VideoFAQ - FotoFAQ - bei Flickr - DSLR Kleinanzeigen
Benutzt den DANKE-Knopf oder bewertet den Beitrag
"GEHT NICHT" HILFT NICHT, TESTET EURE CODES ONLINE UND GEBT KLARE INFOS!
-> Regexp <- -> php <- -> Javascript <-
-
18.05.10 03:04 #3
Hallo!
Mit header() werden Daten an die Client gesendet, welche er als erstes bekommen soll.
Es können weitere Daten (z.B. HTML-Quelltext) folgen, ist aber nicht grundsätzlich notwendig.
Es kann aber auch passieren dass andere Daten ebenfalls als erstes an den Client geschickt werden müssen, ein typisches Beispiel wäre unter anderem session_start().
Damit header() und session_start() "gleichzeitig" an den Client gesendet werden können, muss PHP den Ausgabepuffer verwenden (siehe Output-Control-Funktionen).
Versuchst Du header() und session_start() ohne Ausgabepuffer an den Client zu senden, spuckt PHP eine Warnnung aus (headers already sent).
Selbiges passiert auch wenn andere Daten vorher gesendet werden (z.B. eine Leerzeile oder HTML-Quelltext).
Siehe auch php-fehlermeldungen.de.
Nun zu Deinem Code:
Mit "Content-Type" (ein anderer Begriff wäre MIME-Type) wird dem Client mitgeteilt welcher Dateityp (nicht zu verwechseln mit der Dateiendung) gesendet werden soll.
Einen kleinen (aber wohl nicht vollständigen) Überblick über einige MIME-Typen findest Du z.B. hier bei Selfhtml.
Mit "Content-Disposition" wird dem Client mitgeteilt ob es sich um einen Anhang (attachment) handelt und dieser als Download angeboten werden soll, oder ob die Datei im Client (sofern möglich) angezeigt werden soll (inline).
Die 2. Angabe (filename) teilt dem Client den Dateinamen mit, unter welchem die Datei angehängt bzw. angezeigt werden soll.
Mit "Pragma" wird angegeben ob bzw. wie die Datei im Proxy zwischengespeichert werden soll.
"no-cache" bedeutet dabei dass die Datei nicht im Proxy zwischengepeichert werden soll (sinnvoll bei Dateien die sich immer wieder ändern).
Mit "Expires" wird dem Client mitgeteilt wie lange dieser die Datei zwischenspeichern soll (z.B. im Browser-Cache).
Die "0" bedeutet hierbei die Zeit in Sekunden, die Datei wird also nicht vom Client zwischengespeichert (auch hier wieder --> sinnvoll bei Dateien die sich immer wieder ändern).
Weitere Links:
http://de.selfhtml.org/html/kopfdaten/meta.htm
http://www.ietf.org/rfc/rfc2183.txt
Gruss Dr DauSchri-Schra-Schrödi *g*
mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
Dinge, die mit Tabellen besser klappen als mit CSS
Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
Meine Links zum Thema Linux (Last update: 29.10.2011)
Kein Busen ist so flach wie das Niveau dieser Party!
----
Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
----
Ich habe 3 Kinder und kein Geld!
Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)
-
vielen Herzlichen Dank für die Antwort, es hat mir gut geholfen
Gruß
Ähnliche Themen
-
Datei Download per readfile oder fpassthru warum muss header angegeben werden ****
Von ThunderStorm1 im Forum PHPAntworten: 1Letzter Beitrag: 13.01.11, 08:43 -
PHP Header
Von Sasser im Forum PHPAntworten: 3Letzter Beitrag: 25.11.08, 21:29 -
Wo kommentieren? Header oder Quelltext?
Von DonDozone im Forum Coders TalkAntworten: 2Letzter Beitrag: 02.07.08, 19:54 -
Header-Größe bestimmen oder nicht?
Von aheimburg im Forum CSSAntworten: 2Letzter Beitrag: 05.11.07, 15:01 -
Mail Body und/oder Header auslesen?
Von speedyggg im Forum PHPAntworten: 2Letzter Beitrag: 24.10.06, 08:27





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren