2016-07-11 39 views
2

Hier ist mein Code in meiner logout.php.Wenn ich meinen Code auf den Server hochlade, warum funktioniert meine logout.php nicht?

session_start(); 
    session_unset(); 
    session_destroy(); 
    header("Location: ../index.php"); 

dieser Code funktioniert, wenn ich es in meinem localhost laufen, aber wenn ich es in meinen Server hochladen es hat nicht funktioniert, und macht mich nicht in der Lage Abmeldung von meiner Website. bitte jemand helfen mir durch 'thank thank you.

+0

haben Sie die Seite logout.php direkt von Ihrem Browser aus aufgerufen? – Avishake

+0

Was passiert, wenn Sie logout.php ausführen? leitet es auf index.php um oder nicht? –

+1

"Es hat nicht funktioniert" wird uns nicht helfen, lassen Sie uns es debuggen: anstelle der Kopfzeile ("Speicherort .. versuchen Sie, var_dump schreiben ($ _ SESSION); - Was ist die Ausgabe beim Ausführen der Datei? –

Antwort

-2

Stellen Sie sicher, dass Ihre Sitzung initialisiert wird, bevor Sie sie löschen.

session_start() ; 
var_dump($_SESSION); // Check session is set/not 
session_destroy() ; 
header("Location: ../index.php"); 

Wenn Sie einen Sitzungswertdruck haben, dann können wir ihn sicher zerstören.

+0

es hat nichts gezeigt, immer noch auf der gleichen Seite mit dem weißen Bildschirm .. –

+0

sollte es Kommentar keine Antwort sein – urfusion

0

Es sind mehrere Szenarien möglich, in denen Ihre logout.php nicht funktioniert. Am häufigsten ist es, dass Ihre Berechtigungen inkorrekt sind und Ihre Sitzungsdatei nicht auf dem Server erstellt werden kann.

Um zu überprüfen, ob dies der Fall ist, rate ich Ihnen, Fehlerberichte zu aktivieren. Sie können dies tun, indem Sie die folgenden Zeilen an der Spitze Ihrer PHP-Datei setzen:

// Put this code in your logout.php temporarily 
error_reporting(E_ALL); 
ini_set('display_errors', 'On'); 

Im Anschluss daran, stellen Sie sicher, dass Ihre Sitzung nicht bereits eingeleitet.

// Replace session_start(); in all files with this 
if (!isset($_SESSION)) { 
    session_start(); 
} 

Ich hoffe, dass die obigen Codeänderungen Ihnen zeigen, was Ihr Fehler sein könnte.

+0

sollte ich setzen error_reporting (E_ALL); ini_set ('display_errors', 'On'); in jeder Datei? und wie wäre es mit der if (! Isset ($ _ SESSION)) { session_start(); } wo sollte ich diesen Code setzen? Ich denke, das Problem ist, dass die Session-Datei nicht auf dem Server erstellt werden kann, wie Sie gesagt haben, aber ich weiß nicht warum ... Ich verstehe es nicht, warum es nicht funktioniert in meinem Server cpanel, aber es funktioniert ordnungsgemäß in meinem localhost. –