php-Login-Bereich: Session already started

  • Hallo @ all!

    Hab mir mit Hilfe der zahlreichen Beispiele im Netz einen php-Login-Bereich gebastelt. Funktioniert super, hab aber trotzdem ein Problem - sonst wär ich ja nicht hier. ;)

    Wenn sich ein User anmeldet, wird ein Hash-Wert aus zufälligen Zahlen und Buchstaben als Session-Variable gespeichert. Ich habe nun auf jeder Seite im Login-Bereich eine Übreprüfung eingebaut, die checkt, ob diese Variable vorhanden und auch gültig ist. Jetzt habe ich aber das Problem, dass meine Haupseite (index.php) mehrere Seiten included. Da ich die Überprüfung ja auf jeder Seite eingebaut habe, bekomme ich nun die Fehlermeldung, dass bereits eine Session gestartet wurde. Logisch - wundert micht ja auch nicht. Die Frage ist nur wie kann ich das verhindern? Wenn ich die Überprüfung nicht auf jeder Seite einbaue, dann könnte man ja theoretisch Unterseiten aus dem Login-Bereich direkt aufrufen. Das möcht ich ja unbedingt verhindern.

    Hat jemand Erfahrung damit oder brauchbare Tipps? Ich bin offen für alles. Vielleicht muss ich ja meinen Login-Bereich auch komplett anders angehen?

    Vielen Dank für jedes Feedback!

    mfg
    Ivanman

    Einmal editiert, zuletzt von Ivanman (29. Oktober 2011 um 17:27)

  • Du baust die Abfrage einfach (in diesem fall) nur auf der Indexseite ein, die includeten Seiten packst du zB in ein geschütztes verzeichnis. Oder hab ich das Problem falsch verstanden?

    alxy

  • Wenn du die anderen Seiten includest, musst du nur im index.php die Session starten.
    Da ist das andere überflüssig.

    Something big is coming. And there will be pirates and ninjas and unicorns...