2017-06-03 2 views
0

Also, ich habe ein Registrierungs- und Anmeldesystem, das perfekt mit PHP und MySQL funktioniert. Meine Abmeldung funktioniert nicht. Ich habe meine Logout-Button an diesem Skript verknüpft ist, wenn ich es wird die Seite aktualisiert klicken, aber ich bin immer noch eingeloggt. Irgendwelche VorschlägeWarum meldet sich mein Abmeldeskript nicht ab?

<?php 
session_start(); 
if (!isset($_SESSION['Name'])) { 
header("Location: ../index.php"); 
} else if(isset($_SESSION['Name'])!="") { 
header("Location: Home.php"); 
} 

if (isset($_GET['Name'])) { 
unset($_SESSION['Name']); 
session_unset(); 
session_destroy(); 
header("Location: ../index.php"); 
exit; 
} 

?> 
+0

** WARNUNG **: Das Schreiben Ihrer eigenen Zugriffskontrollschicht ist nicht einfach und es gibt viele Möglichkeiten, es schwer falsch zu machen. Bitte schreiben Sie nicht Ihr eigenes Authentifizierungssystem, wenn Sie ein modernes [Entwicklungsframework] (http://codegeekz.com/best-php-frameworks-for-developers/) wie [Laravel] (http://laravel.com/) verfügt über ein integriertes [Authentifizierungssystem] (https://laravel.com/docs/5.4/authentication). Am absolutesten folgen Sie [empfohlene Best Practices für die Sicherheit] (http://www.phptherightway.com/#security) und ** speichern Sie Passwörter niemals als Nur-Text **. – tadman

+0

Zeigen Sie uns den Tastencode. Und woher weißt du, dass du immer noch eingeloggt bist? Wir müssen mehr Code sehen. – Black

Antwort

0

Sie haben die Linie

else if(isset($_SESSION['Name'])!="") 

zu

zu korrigieren
else if(isset($_SESSION['Name']) && $_SESSION['Name'] !="") 

Andernfalls versucht es, einen booleschen Wert mit einer Zeichenfolge zu vergleichen.

Verwandte Themen