SESSION Problem

5im0n

Mitglied
Hallo
ich versuche gerade im login script den Benutzernamen in einer Session variable zu speichern.
login.php
PHP:
<?php
session_start();
//abfrage = alles OK
$_SESSION['user'] = $user;
So diese Variable ist nun auch gespeichert und ich kann sie auch überall wieder aufrufen. Allerdings kann ich sie nicht wieder im Logout script löschen. Denn wenn ich den Benutznamen geändert habe steht immer noch überall der alte.
Was muss in die logout.php rein?
Gruß
5im0n
 
Das habe ich schon ausprobiert. Hat aber nicht geklappt.
logout.php
PHP:
<?php
if(isset($_POST['logout']))
{
session_start (); 
session_unset ($_SESSION['user']); 
session_unset ($_SESSION['passwort']);
session_destroy ();  

header ("Location: ../../../index.php"); 
}


?>
Gruß
5imon
 
Du wendest die funktion falsch an. Das steht in der Manual: (Wink mit dem Zaunpfahl: da steht ALLE...)

de.php.net/session_unset hat gesagt.:
Beschreibung
void session_unset ( void )

Die Funktion session_unset() löscht alle Session-Variablen, die gegenwärtig registriert sind.

Anmerkung: Benutzen Sie bei Verwendung von $_SESSION (oder $HTTP_SESSION_VARS bei PHP 4.0.6 oder niedriger) unset() um die Registrierung einer Session-Variablen aufzuheben, d.h. unset ($_SESSION['varname']);.

Achtung
Heben Sie NICHT die Registrierung der gesamten $_SESSION mit unset($_SESSION) auf, weil dies die Registrierung von Variablen durch die Superglobale $_SESSION deaktivieren würde.

Probier es mal so, wie dort beschrieben.
 
Zuletzt bearbeitet:
Wenn ich das richtig verstanden habe muss ich statt session_unset() nur unset() nehmen aber das klappt bei mir auch nicht.
logout.php
PHP:
<?php
if(isset($_POST['logoutbutton']))
{
session_start (); 
unset ($_SESSION['user']); 
session_destroy ();  

header ("Location: ../../../index.php"); 
}

?>

Habe den Fehler gefunden! hatte session immer noch einaml bestimmt *SCHÄM*
 
Zuletzt bearbeitet:
Zurück