Mailinglisten-Archive |
Ringo Großer wrote: > Hallo Liste, Hallo Ringo, > [...] > > Das Manual sagt zur session_id(): > "Wenn ID angegeben wird, wird die die aktuelle Session-ID ersetzt. > session_id() muss zu diesem Zweck vor session_start() aufgerufen werden." Und weiter unten: "session_id() gibt die Session-ID der aktuellen Session zurück oder die leere Zeichenkette (""), falls es keine aktuelle Session gibt (es existiert keine aktuelle Session-ID)." (http://php.cgerharz.de/session_id) > Also nur wenn ich die ID vorgeben möchte, dann führe ich session_id() > vor dem session_start() aus. Richtig. > [...] > > Folgender Hinweis kam von Yannik: >> if (session_id() ==='') //session existiert nicht... > > Diese Bedingung dürfte nach meinen bisherigen Tests aber vor einen > session_start() immer positiv ausfallen. Also würde ich damit niemals > eine bestehende Session erkennen und könnte sie mit einem nur an > diese Bedingung geknüpften session_start() auch nicht wieder aufnehmen. Auch richtig, soweit ich weiss. Wie waer's mit Folgendem: Im globalen Framework: if (isset($_GET[session_name()]) || isset($_POST[session_name()] || isset($_COOKIE[session_name()]) { session_start(); } Und sobald die Session benoetigt wird (sofern noch keine existiert), also meinetwegen nach einem Login einfach: session_start() (ungetestet!) > Was wäre also ein brauchbarer Test, um auf die Existenz einer Session > zu prüfen? Sieht PHP dafür eine Funktion vor oder muss ich selbst nach > einen entsprechenden Cookie oder Parameter prüfen? Mir ist keine Funktion bekannt, ergo obiger Code. Lasse mich allerdings gerne belehren, falls es da etwas eleganteres gibt. :) > regards, Ringo Christopher
php::bar PHP Wiki - Listenarchive