Mailinglisten-Archive |
hi leute,
das problem ist schwierig zu beschreiben, da ich kein passendes
subject wüsste - dementsprechend fällt mir die suche nach einer lösung
in FAQs schwer. immerhin hab ich mich schonmal durch das HTTP 1.1
(RFC2616) durchgekämpft, aber wurde nich schlauer (bzw. ich lernte
zwar vieles, aber nichts, was mir helfen würde. oh, das erinnert mich
an die schule..hmm).
-szenario:
ich habe ein script, nennen wir es download.php3. es generiert eine
ausgabe und ich möchte, dass der user diese ausgabe downloaden kann
(die ausgabe ist dynamisch, deshalb geht "Location: .." nicht).
ich habe in den MIME-types gestöbert und es folgendermassen gelöst:
Header("Content-Type: application/x-tar\n\n");
mit x-tar kann der browser keine dummheiten machen und wird es sicher
als file downloadbar machen. das ging auch perfekt. (gab es da nicht
mal ein multipart/mixed ??)
-problem:
ich will den dateinamen angeben können! das downloadfenster zeigt bis
jetzt noch 'download.php3' an, also den namen des scripts. es muss
aber doch sicher möglich sein durch eine angabe im HTTP-header einen
beliebigen filenamen angeben zu können!
-lösungen, die mir nicht so gefallen:
a) man könnte ein file generieren (hallo.html) und das dann
downloaden lassen.
b) ich könnte ein 404 overriden (apache erlaubt ja die angabe eines
scripts dafür). dann müsste ich den user auf eine nicht-existente datei
verweisen - dann springt das script ein und liefert die daten. ich
glaube so macht es idrive.com
cu
php::bar PHP Wiki - Listenarchive