[PHP] Logout



  • Hi Leude,
    ich hab nen kleines Login in php mit mysql-anbindung programmiert.
    Dabei werden folgende Sessionsvariablen festgesetzt

    <?php
    session_start (); // Starte eine Session.
    // ======== AUFBAU DER DATENBANKVERBINGUN ========
    $connID = mysql_connect ("localhost", "bla", "bla");
    @mysql_select_db ("bla", $connID);
    
    // Generiere und starte die Abfrage
    $sql = "SELECT * FROM member_ofk WHERE (loginname like '$login') AND (Kennwort = '$password')";
    $result = mysql_query ($sql, $connID);
    
    if ((session_is_registered ("user_eingeloggt")) AND ($user_eingeloggt)) {
    
    } else {
    
    if (mysql_num_rows ($result) > 0) {
      // Ein Datensatz wurde gefunden.
      $datenrichtig = true;
    
      // Variable $user_eingeloggt erstellen.
      $user_eingeloggt = true;
    } else {
      // Die Benutzerdaten waren falsch.
      $datenrichtig = false;
    
      // Variable $user_eingeloggt erstellen.
      $user_eingeloggt = false;
    }
    
    // Variable $user_eingeloggt & loginname in der Session registrieren.
    
    session_register ("user_eingeloggt");
    session_register ("login");
    session_register ("password");
    
    }
    
    ?>
    <?php
    if (($datenrichtig) or ((session_is_registered ("user_eingeloggt")) AND ($user_eingeloggt))) {
    
    ?>
    bla bla wenn alles richtig ist
    <?php } else {   ?>
    blabla wenn pass und bneutzername falsch ist
    <?php } ?>
    

    Nun mach ich folgendes Logout dazu:

    <?php
    
    session_start (); // Session starten.
    
    $user_eingeloggt = false;
    session_register ("user_eingeloggt");
    
    ?>
    blabla erfolgreich ausgeloggt
    

    Jetzt das Problem: Wenn ich mich ausgeloggt habe, kann ich mich nicht mehr einloggen. Egal mit welchem Account. Es kommt immer "Benutzername bzw. Kennwort falsch". Erst wennn ich den Browser neustarte, kann ich mich wieder anmelden.
    Was mache ich im Logout falsch?

    cu
    Hexa



  • weil die session immernoch läuft, du setzt ja nur den Wert auf false sonst nix. du muust mit session_destroy die session löschen !
    http://de.php.net/manual/de/function.session-destroy.php



  • Vielen Dank, läuft!


Anmelden zum Antworten