dedlfix: PHP Fehlermeldung: Cannot modify header information - Ursache?

Beitrag lesen

echo $begrüßung;

Dein Webspace startet automatisch eine Session und vergibt deshalb ein Cookie. In irgendeinem Deiner Scripte wird jetzt etwas _sofort_ an den Browser ausgegeben, sodass dieser Mechanismus anscheinend nicht korrekt arbeiten kann...

Unwahrscheinlich, dass es sich um einen Session-Start handelt. Die Meldung passt nicht zum Verhalten beim Session-Start, oder der OP hat weitere Meldungen unterschlagen.

Ob das Obige jetzt so unbedingt einen Sinn ergibt, mag dahingestellt bleiben, jedoch erscheint mir das Phänomen, dass nach dem Reload einer Seite die Fehlermeldung wieder verschwindet, ganz stark auf session.autostart=true hinzuweisen.

Nein, ganz und gar nicht. Bei aktiviertem session.auto_start startet PHP den Session-Mechanismus selbständig vor dem Scriptstart. Da kann noch keine Ausgabe stattgefunden haben[1]. Anders kann das beim manuellen Start mittels session_start() sein, denn das kann auch aufgerufen werden, wenn bereits eine Ausgabe erzeugt wurde. In dem Fall gibt es aber diese Meldung und vorher mindestens noch noch »Cannot send session cookie - headers already sent ...«

setcookie(), aufgerufen in Abhängigkeit von einem empfangenen Cookie, ist wenig wahrscheinlich, denn beim ersten Aufruf konnte der Keks ja nicht ausgeliefert werden, kann also eim wiederholten Request nicht mit dabei sein. Es sei denn, ein zweites setcookie() hat den selben Keks bereits und vor der ersten Ausgabe gesendet.

[1] Höchstens mit auto_prepend_file. Ob das aber vor session.auto_start oder danach ausgeführt wird, weiß ich nicht. Sinnvoll wäre es danach.

echo "$verabschiedung $name";