PHP +[MYSQL]: Login auf jeder Seite prüfen

raven16

Lieutenant
Registriert
Nov. 2008
Beiträge
580
Hi,

hab mir für ne Homepage mit Hilfe eines Datenbankgesteuerten Logintutorial einen Login gebaut.

Das einloggen klappt soweit, dass der die Benutzerdaten mit der Datenbank vergleicht und wenn dieser vorhanden ist ihn auch auf die richtige Seite weiterleitet.

Nun hab ich mir eine kleine include-Datei geschrieben, die auf jeder Seite prüfen soll, ob der Benutzer noch eingeloggt ist, damit man die Dateien nicht einfach so in der Adressleiste aufrufen kann und bei nicht vorhandenen Login immer wieder auf die Startseite zurückgelangt.
PHP:
<? 
session_start(); 
include 'session.inc.php'; 
if (!logged_in()) 
{
	header('Location: ../../index.php?login=false');
}
?>
In dieser Datei wird erst meine sessiondatei eingefügt und dann die Funktion logged_in() aufgerufen:
PHP:
//Funktion, um zu Prüfen ob der User noch eingeloggt ist
function logged_in()
{
    $sql="SELECT userID
    FROM users
    WHERE usersession='".session_id()."'
    LIMIT 1";
    $result= mysql_query($sql);
      return ( mysql_num_rows($result)==1);
}
Wenn der User nicht eingeloggt ist, dann soll man wieder auf die Startseite gelangen...
Nur leider leitet der mich sofort wieder zurück an die Startseite, wenn ich diese Datei auf der Seite nach dem Login aktiviere...
Der loggt mich also erst ein und dann so gesehen direkt wieder aus...

Hoffe ihr könnt mir unter die Arme greifen
 
Ich kenn mich noch nicht viel mit Sessions aus...

Also geht das vll. noch genauer? :)
 
Gut ich schau es mir mal an und meld mich wieder wenn ich fragen hab
 
du kannst auch in jeden header die session_id mitgeben.... dann passt es ja auch. muss man halt automatisierung einbauen
 
Zurück
Oben