phpbar.de logo

Mailinglisten-Archive

[php] re: nochmal Download, WICHTIG!!

[php] re: nochmal Download, WICHTIG!!

Guido Haeger GH-lists_(at)_ecora.de
Fri, 18 Aug 2000 11:03:59 +0200


Hans Theo Mislisch schrieb

> Also ich habe untenstehenden Headerblock auprobiert (NS4.72),
> der funktioniert nicht richtig bzw. garnicht.
> Vor allem kann er die Dateigröße während dem Download
> nicht anzeigen wie das bei header(Location: ) der Fall ist.
>
> Woran liegt denn das mit der fehlenden Größe? Müsste man
> die vorher feststellen und dann als Parameter übergeben?
> Wenn ja wie?

Du willst das während des Downloads ein korrekter "Fortschrittsbalken"
angezeigt wird ( x KB von y KB)? Das basiert IMHO auf dem
Content-Length-Header.  Wenn die Datei auf Deinem Server liegt, kannst
Du mit filesize die Größe ermitteln und mal versuchen den
Content-Length-Header manuell zu setzen (ungetestet).

> header("Content-type: application/x-octetstream");

heißt eigentlich application/octet-stream

> header("Content-disposition: attachment;
> filename=http://www.foobar.de/.$dl");

Da steht doch extra filename= und nicht url=. Wenn Der Client die
optionale Filename-Angabe beim Content-Dispositon-Header beachtet, dann
kann man hier den Dateinamen vordefinieren, unter dem die Datei
abgespeichert werden soll. Ansonsten wird der Browser beim
Abspeichern-Dialog meist den Namen des Download-Scriptes als Dateinamen
vorschlagen.

> readfile("http://www.foobar.de/.$dl");

Die Datei liegt nicht auf Deinem Server? Und hast Du wirklich einen
Punkt vor dem Dateinamen? Der Punkt fungiert nur außerhalb von Strings
als Verknüpfungsoperator.

Guido Haeger




php::bar PHP Wiki   -   Listenarchive