SESSION-Funktionen ausserhalb
Martin Hein
- php
0 wahsaga0 Martin Hein0 Rafael
Hallo Forum,
um SESSION-Variablen nach Ablauf der SESSION nutzen zu können,
speichere ich die SESSION-Files in ein anderes Verzeichnis.
Mit den SESSION-Funktionen von PHP kann man relativ komfortabel
auf die Inhalte der SESSION-Dateien zugreifen
z.B. echo $_SESSION['variable'];
Die kopierte Datei ist aber ja nur 'irgendeine Datei', in der
nach einem best. Muster die Variablen als Texte abgelegt werden.
Die müsste ich parsen, um so Variablen und Werte auszulesen.
Hat jemand eine Idee, wie ich die SESSION-Funktionalität
von PHP nutzen könnte, um auf das Parsen zu verzichten ?
beste gruesse,
martin
hi,
um SESSION-Variablen nach Ablauf der SESSION nutzen zu können,
speichere ich die SESSION-Files in ein anderes Verzeichnis.
"Anders" als was?
Die kopierte Datei ist aber ja nur 'irgendeine Datei', in der
nach einem best. Muster die Variablen als Texte abgelegt werden.
Die müsste ich parsen, um so Variablen und Werte auszulesen.Hat jemand eine Idee, wie ich die SESSION-Funktionalität
von PHP nutzen könnte, um auf das Parsen zu verzichten ?
In dem du sie ganz stinknormal benutzt ...?
gruß,
wahsaga
Hi,
"Anders" als was?
anders als 'session.save_path'
In dem du sie ganz stinknormal benutzt ...?
"benutzen" heisst für mich, dass ich sie mit z.b. "fopen()" öffne,
um mit z.b. "fgets(") an ihre Inhalte zu kommen. Solange sie im
'session.save_path' liegt und eine aktive SESSION ist, kann ich
statt "fopen()" "session_start()" verwenden und statt den Inhalt
mit "fgets()" usw. auseinander zu bauen, per SESSION['variable']
an die Inhalte kommen, die mich interessieren. Und das wäre sehr
viel einfacher, als 'stinknormal' ;)
hab die Lösung für mich gefunden (vielleicht hilft sie jemand):
Was geht, ist den 'session.save_path' mit 'ini_set' umzubiegen
und per 'session_id()' auf die Datei zeige, deren Inhalte mich
interessieren. Schon kann ich auf die Inhalte der Datei über das
Array SESSOION[] zugreifen.
besten dank und
viele gruesse,
martin hein
Was nichts weiter ist als die Session "normal", wie du sagst, zu nutzen. Was du in diesem Zusammenhang vielleicht noch suchst wäre unserialize. Du könntest dir eine eigene Funktion schreiben, die ähnlich session_start() dir deinen Ordner als Session in ein Array verfügbar macht.
Besipielsweise in $GLOBALS['my_session']. Beachte, dass du in diesem Fall aber in einer ähnlichen Variante wie "damals" durch session_register() eine Änderung nicht einfach durch eine Anpassung der Variable erzielen kannst, sondern auch hierzu eine eigene Funktion Bauen musst, die dir den Array-Inhalt neu serialisiert und in deine Datei speichert.
Dass diese Lösung aber Sinn macht, da man Daten, die du dauerhaft vorhältst auch sehr viel komfortabler speichern kann als in einer einzelnen Datei für jeden (!) Besucher deiner Webseite (egal wie oft er deine Seite besucht) ist wohl naheliegend. Überlege dir zuerst was genau du behalten musst und suche dann eine passende Lösung zur Speicherung dieser Daten.
Viele Grüße.