Seite 1 von 1

Infoseite nach Download

Verfasst: Mi 03.Feb, 2010 20:19
von bce
habe ein kleines addon gebastelt wo man eine datei herunterladen kann. dies funktioniert auch soweit.

nur wenn ich den download mittels readfile starte, wird der folgende code danach nicht mehr ausgeführt :

Code: Alles auswählen

readfile($file);

trigger_error($message);

meta_refresh(5, $backlink);
ich stell mir das so vir, dass eine meldung erscheinen soll, damit der download gestartet ist, und ein link angebort wird, falls download doch nicht automatishc gestartet wurde.
und ein link zum index.

aber die meldung wird nicht angezeigt :eek:

kann man nach readfile nichts mehr ausführen?
wie könnte es am besten gelöst werden?

Re: Infoseite nach Download

Verfasst: Do 04.Feb, 2010 09:05
von oxpus
Man muss hierzu verstehen, was durch PHP an den Webbrowser gesendet wird und wie man damit umgeht.
So sendet z. B. ein echo() einen "header"-Inhalt an den Webbrowser, der zunächst nur Inhalt darstellt.
Mit readfile() wird dagegen aber die damit "erzeugte" Webseite komplett beschrieben und auch "abgeschlossen", daher kann man dazu nichts mehr anzeigen lassen. Zumindest nicht mehr "nach" dem Befehl.
Wenn du also etwas anzeigen lassen willst, wäre es nur möglich, eine Seite/Meldung anzuzeigen, dass der Download gestartet wird und dann über einen META-Eintrag die Weiterleitung auf den eigentlichen Download durchführst, mit dem dann der Download tatsächlich gestartet wird.
Das ginge auch über einen Javascript-Code, wenn man den "langsamen" META-Befehl für das redirect nicht ausführen möchte.

Also:
Vorher etwas anzeigen und dann weiterleiten, hinterher ist nichts mehr möglich an den Webbrowser zu senden.

Re: Infoseite nach Download

Verfasst: Do 04.Feb, 2010 11:16
von bce
ok, ich verstehe. danke der info