nicht eingestellte Sitzung funktioniert nicht gut PHP

Ich möchte den Benutzernamen aufheben, wenn auf die Schaltfläche zum Abmelden geklickt wird. Wenn ich setzen möchte, wenn Abmelden auf klicken, wird die Sitzung deaktiviert. Wie soll ich das tun?

Mein Code funktioniert jedoch, wenn ich erneut auf Anmelden klicke, werden die Anmeldeinformationen nicht in den Sitzungen gespeichert. Ich werde weiterhin gebeten, mich erneut anzumelden, anstatt den üblichen Ablauf fortzusetzen. Darf ich wissen, was los ist?

hier ist mein code cart.php

$logout = "allproducts.php";

if(isset($logout))
{
    unset($_SESSION['supermarketcart']);
    unset($_SESSION['MM_Username']);
}

?>
<?php 

          if(isset($_SESSION['MM_Username']) == NULL) 
          { 
              echo "<a href='login.php'>Login</a> " ;

          } 
          else 
          { 
              echo " <a href='$logout'>Logout</a> "; 
          }
      ?>

login.php

<?php
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
  session_start();
}

$loginFormAction = $_SERVER['PHP_SELF'];
if (isset($_GET['accesscheck'])) {
  $_SESSION['PrevUrl'] = $_GET['accesscheck'];
}

if (isset($_POST['username'])) {
  $loginUsername=$_POST['username'];
  $password=$_POST['password'];
  $MM_fldUserAuthorization = "";
  $MM_redirectLoginSuccess = "index.php";
  $MM_redirectLoginFailed = "login.php?fail=1";
  $MM_redirecttoReferrer = false;
  mysql_select_db($database_MyDatabase, $MyDatabase);

  $LoginRS__query=sprintf("SELECT username, password FROM user_data WHERE username=%s AND password=%s",
    GetSQLValueString($loginUsername, "text"), GetSQLValueString($password, "text")); 

  $LoginRS = mysql_query($LoginRS__query, $MyDatabase) or die(mysql_error());
  $loginFoundUser = mysql_num_rows($LoginRS);
  if ($loginFoundUser) {
     $loginStrGroup = "";

    if (PHP_VERSION >= 5.1) {session_regenerate_id(true);} else {session_regenerate_id();}
    //declare two session variables and assign them
    $_SESSION['MM_Username'] = $loginUsername;
    $_SESSION['MM_UserGroup'] = $loginStrGroup;       

    if (isset($_SESSION['PrevUrl']) && false) {
      $MM_redirectLoginSuccess = $_SESSION['PrevUrl'];  
    }
    header("Location: " . $MM_redirectLoginSuccess );
  }
  else {
    header("Location: ". $MM_redirectLoginFailed );
  }
}
?>

Antworten auf die Frage(1)

Ihre Antwort auf die Frage