phillipgerard hat recht, ein Refresh im Header ist um einiges eleganter für einen Fall.
Aber mal eine kurze Erläuteurung, warum er nicht das macht, was du willst:
Ab hier fängst du an, sämtliche Ausagaben (ausgenommen der Header-Angaben) zu puffern, also lädt der Browser mindestens so lange, bis dein Skript auf ob_end_flush gestoßen ist.
|
PHP Quellcode
|
1
|
sleep(5);
|
hier schiebst du noch einmal zuästzlich 5 Sekunden rein, allerdings ist der Ausgabepuffer immer noch aktiv, also es wurde noch nichts an den Browser gesendet, ergo er lädt noch.
|
PHP Quellcode
|
1
|
header('Location: index.php');
|
hier wird die neuen Seite übergeben und der Browser wird
umgeleitet. Diese Angabe wird direkt gesendet, da sie zu den Header-Angaben gehört, aber für deinen Fall nicht weiter wichtig,
Hier erfolgt erst die Ausgabe deiner ersten Seite. Ob davon jemals etwas im Browser (und sei es nur für ein paar ms) angezeigt wird, ist fraglich, da du ihm ja schon die neue Seite gesagt hast, die er laden soll.
Hoffe, du verstehst was ich meine, denn es soll hier ja niemand dumm sterben

.