1. du hast keine leere Seite, weil du mit header/Location ja den Browser anweist, eine neue Seite zu laden.
2. Hättest mal ins PHP-Manual zu "ob_start" sehen sollen: das muss ganz am Anfang stehen, bevor überhaupt irgendeine Ausgabe gemacht wurde.
Problem ist:
1. Wenn du keine Redirection nimmst (also header/Location), dann schickt der Browser bei F5 die Daten noch einmal weg.
2. Wenn du eine Redirection machen willst, dann
bevor du überhaupt irgendetwas mit "echo" ausgibst (da darf auch kein
HTML vorher sein).
Andere Alternative: der Holzhammer 8) - mach' die Umleitung mit JavaScript.
Code:
echo '<script type="text/javascript">location.href="' . htmlspecialchars($_SERVER['PHP_SELF']); . '"; </script>';