Mailinglisten-Archive |
> while (list($key, $val) = each($HTTP_POST_VARS)): > if(session_is_registered($key)) {session_unregister($key); } > session_register ($key); > endwhile; > > versuche ich den eintrag einer var in der session neu zu > registrieren , aber session_unregister() klappt nicht. > d.h. die bereits reistrierte var behält immer den zuerst zugewiesenen > wert. > was ist mein fehler ? Zunächst mal ist der größte Fehler, dass du das HTML-Format für Mails verwendest ;-))) Dann zum eigentlichen Fehler in deinem Code: du un-(registerst) einfach variablen mit dem Namen von POST-Vars, ohne Ihnen deren Wert zuzuweisen... Nur weil es ein Globale Session Variable mit dem gleichen Namen eines ArrayIndexes gibt, hat diese noch nicht dessen Inhalt... Richtig wäre: while ( list($key,$val) = each($HTTP_POST_VARS) ) { if(session_is_registered($key)) { session_unregister($key); } session_register ($key); $_SESSION[$key] = $val; } By the way ich mag die Syntax mit {} ganz gerne... Außerdem sollte man sich überlegen, ob es wirklich sinn macht die Vars zu unregistern, nur um sie gleich danach wieder zu registern... ein einfaches Überschreiben der Werte sollte genügen... jens -- [jens reinemuth * jreinemuth_(at)_activeweb.mis.de] --------------------------------------------------------------------- God said: tar xfvz universe.tar.gz - and the Universe was!
php::bar PHP Wiki - Listenarchive