Hallo Leute,
leider weiss ich noch gar nicht so genau, wo mein Problem liegt und hoffe deshalb, dass die Thematik stimmt^^ Ich werde es euch einfach mal schildern und hoffe, dass ihr damit etwas anfangen könnt. Danke schonmal im Voraus!
Meine Homepage hat einen Internen Bereich mit selbstgebasteltem Login-Script. Die Clou des ganzen ist, dass bei korrektem Einloggen folgender Code abläuft:
//Einloggen
if ( /*Passwort und Benutzer korrekt*/ && !$_SESSION['login']) {
session_start();
$_SESSION['login'] = TRUE;
}
Das funktioniert soweit einwandfrei, man kann sich einloggen und über die Abfrage
session_start();
if (!$_SESSION['login']) { require 'loginformular.html'; }
else { require 'interner_bereich.php'; }
auf den internen Bereich zugreifen, dort wild im Angebot hin und her browsen, sich mit folgendem Code ausloggen ~~~php
//Ausloggen
session_start();
if ($_GET['logout'] && $_SESSION['login']) {
$_SESSION['login'] = FALSE;
}
und wieder einloggen. Funktioniert immer einwandfrei.
Das Problem beginnt dann (und nur mit Firefox, nich mit IE!) wenn man eingeloggt ist und auf eine Seite des nicht-internen-Bereichs meiner Homepage zugreift. Sobald man nämlich wieder auf den internen Bereich wechseln will, wird mit dem zweiten Code-Beispiel das Login-Formular aufgerufen, wer sich dann aber erneut einloggen will, kommt nicht an der Abfrage im "Login-Scipt" vorbei, die ja (siehe erster Code) überprüft, ob man nicht schon eingeloggt ist.
Ich kann das Problem lösen, indem ich beim "Login-Script" die Abfrage nach "bereits eingeloggt" entferne, und es somit zulasse, dass sich jemand zweimal einloggt. Ist grundsätzlich (noch) kein Problem, aber ich verstehe nicht, wieso die grundsätzlich selbe If-Abfrage zwei verschiedene Ergebnisse liefert. Könnt ihr mir da helfen?
MfG
Solero