Hallo,
Kennt den jemand und weiß was es mir sagen will
Nur, wenn die Einstellung register_globals aktiviert ist, kannst Du mit session_register und globalen Variablen arbeiten, wenn die Einstellung register_globals deaktiviert ist, dann musst Du mit dem superglobalen Array $_SESSION arbeiten. (was auch funktioniert, wenn register_globals an ist [1]) Bei früheren PHP-Versionen gab es einen Bug, bei dem das registrieren von globalen Variablen als Session-Variablen auch bei register_globals = off aktiviert war. Vor der aus versehenen Ausnutzung dieses Bugs soll diese Meldung warnen.
und warum er nur sporadisch auftritt.
Ich nehme an, PHP verwendet irgendwelche Heuristiken, um zu prüfen, ob Dein Script bei register_globals = off in dieser Hinsicht versagen würde und diese funktionieren nicht ganz exakt.
Abstellen kannst Du die Meldung übrigens - wie sie erklärt - über eine Einstellung in der php.ini, namentlich session.bug_compat_42. Diese kannst Du (vermutlich) auch über ini_set ('session.bug_compat_42', 0); am Anfang Deiner Scripte ausschalten, falls Du keinen Zugriff auf Deine php.ini hast.
Viele Grüße,
Christian
[1] Nur beim entfernen von Session-Variablen muss man es bei register_globals und $_SESSION doppelt machen. (auf beide Arten)