bei php wird der Code gleich an den Client gesendet (meines Wissens), d. h. wenn du zuerst html-code ausgibst, wird gleich die headerinformation Content-type: text/html\n\n ausgegeben. Versuch doch mal die headerinformationen in der ersten Zeile auszugeben, bevor du irgendetwas anderes an den client ausgibst.
kurze Anmerkung noch hierzu:
Es gibt bereits einen Fehler, wenn du leere Zeilen vor der Headerinformation ausgibst ( der Header wird ja durch eine Leerzeile vom Content getrennt ).
das <?php header(...) ?> muss also in der 1. Zeile stehen!
Ich hoffe, dass das Hilft
Philipp