Wie kriege ich Sessions oder Cookies mit include() zum laufen?
Philipp
- php
0 Sönke Tesch0 Joachim0 wahsaga
Hallo *wink*,
kann mir jemand sagen, wie ich Cookies oder Sessions zum laufen kriege, wenn die Seite in der sie aufgerufen werden, per include() eingebunden ist?
Das Problem ist ja, dass keine Daten ausgegeben werden dürfen, bevor ein Cookie gesetzt oder eine Session gestartet wurde (wegen dem Header).
Tja, aber leider bin ich auf include() angewiesen. Hat jemand eine Idee, wie ich das umgehen kann?
Ich brauche dies für ein Log In-System. Funktioniert soweit auch. Das Problem bei der Session-Variante wäre, das bei _jedem_ Seitenbesuch eine Session gestartet wird, da es ja am Anfang der index.php so definiert werden muss.
Kann mir jemand helfen?
Danke im Voraus!
Das Problem ist ja, dass keine Daten ausgegeben werden dürfen, bevor ein Cookie gesetzt oder eine Session gestartet wurde (wegen dem Header).
Tja, aber leider bin ich auf include() angewiesen. Hat jemand eine Idee, wie ich das umgehen kann?
Nein, was haben Cookies mit include() zu tun? include() klebt einfach die betreffende Datei in den aktuellen Quelltext, genauso als wenn Du es von Hand im Editor machen würdest. Nicht mehr, nicht weniger.
Gruß,
soenk.e
PS: Eventuell hilft Dir output_buffering, siehe PHP-Anleitung, Kapitel Konfiguration.
Hi,
ich verstehe Dein Problem nicht. Warum machst Du es nicht so:
-----
include("session.php") // setzt die Session falls login erfolgreich
if ($loggedIn) : // authorisiert - inhalt
[<html>...</html>]
else : // nicht authorisiert - loginseite
[<html>...</html>]
endif;
------
hth + Gruesse Joachim
hi,
Das Problem ist ja, dass keine Daten ausgegeben werden dürfen, bevor ein Cookie gesetzt oder eine Session gestartet wurde (wegen dem Header).
Tja, aber leider bin ich auf include() angewiesen.
daraus ergibt sich prinzipiell kein problem - wenn es bei dir eins darstellt, dann ist es ein seblst gemachtes.
mache entweder in deinen include-files keine ausgaben, oder sende den cookie vorher.
gruss,
wahsaga