Mailinglisten-Archive |
hallo,
ich spiele gerade mit der phplib herum.
Es funktioniert alles absolut korrekt. Nur habe ich ein
Verständnissproblem in Sachen "sessions".
Ich benutze folgenden Code
(http://www.koehntopp.de/kris/artikel/phplib-deutsch/)
<CODE>
<?php
// Laden der Variablen aus der Datenbank.
page_open(array("sess" => "IrgendEinName_Session"));
// Die globale Variable $s ist nun bei der Session registriert.
$sess->register("s");
// $s wird auf einen definierten Startwert gesetzt, wenn die
// Variable noch nicht existiert.
if (!isset($s))
$s = 0;
// $s hochzählen.
$s++;
?>
<html>
<head>
<title>Eine Testseite</title>
</head>
<body>
<h1>Eine Testseite</h1>
Die Variable $s hat den Wert <?php print $s ?>.
</body>
</html>
<?php
// Zurückspeichern der Variablen in die Datenbank
page_close();
?>
######Ausschnitt local.inc
class IrgendEinName_Session extends Session {
var $classname = "IrgendEinName_Session";
var $cookiename = "";
var $magic = "jaja;
var $mode = "cookie";
var $fallback_mode = "get";
var $lifetime = 0;
var $that_class = "pmwbt_CT_Sql";
var $gc_probability = 5;
}
########################
</CODE>
Funktioniert sehr gut. Bei jeden Aufruf der Seite wird der
Zähler hochgezählt.
Auch die Sessiondaten liegen richtig in der DB.
Die "lifetime" der session-cookies" ist auf 0.
Das müsste doch bedeuten das spätestens
nach dem schliessen des Browsers die session
gestorben ist. Oder nicht=
Beim erneuten Aufrufen der Seite fährt er mit dem
Zähler einfach fort. er benutzt also die gleiche
sessionID. Wie kann das sein ? Was habe ich nicht verstanden?
Ausserdem wie ist es mit den Daten in der active_sessions Table.
Für jede Session wird ein neuer Datensatz angelegt, oder nicht?
Diese werden nicht gelöscht ?
Hmm. Ich glaube mir ist irgendwas noch nicht richtig klar. ;-))
Micha
php::bar PHP Wiki - Listenarchive