Es gibt da grundsätzlich zwei Methoden die beide aber am besten funktionieren wenn die Session über Mysql gehandelt werden.
Ab PHP 5.4 kennt man dazu die elegante Art vom SessionHandlerInterface.
Methode 1
Die funktioniert so
- Man zwingt die erste zu einem definierten Sessionnamen und damit zu einer definierten SessionId.
- Die SesssionId übergibt man beim Aufruf dem zweiten Program
- Das zweite Programm öffnet die SessionDB der ersten Anwendung, liest die Session dort aus und dekodiert sie - damit hat man die Daten zur Verfügung
Methode 2
Die funktioniert so
- Man zwingt die beide Anwendungen einen nach festen Regeln definierten Sessionnamen zu verwenden und erhält damit die gleiche definierte SessionId.
- Die zweite Anwendung verwendet die gleiche DB und Sessiontabelle wie die erste Anwendung - eine extra Session DB wäre also nicht schlecht
- Damit haben beide Anwendungen den direkten Zugriff auf die Sessiondaten.
Das bedeutet aber auch - beide Anwendungen wirken diesbezüglich gleich - lesend und schreibend
Der Zugriff auf Mysql ist auch als Remotezugriff möglich so das auf diesem Weg auch gearbeitet werden kann.
Man muss also wissen was man gerne möchte und man sollte bedenken das bei der zweiten Methode die Daten auch verändert werden können bzw. in Teilbereichen ganz sicher sogar verändert werden.
Bei der ersten Methode sollte man sicherstellen das man die Sessiondaten nur einmal ausliest wenn man sicher gehen will das Veränderungen aus der ersten Anwendung nach dem Lesevorgang nicht mehr berücksichtigt werden sollen bzw. dürfen.
Normal würden Sessiondaten als File z.B. unter /var/lib/php5 abgelegt sein. Ein Filezugriff über eine Webapplikation wäre normal nicht möglich.
Eine Freigabe würde zudem ein höheres Sicherheitsrisiko bedeuten.
Eine Freigabe würde zudem ein höheres Sicherheitsrisiko bedeuten.
Unter PHP sollte man grundsätzlich immer die aktuellste Version verwenden.
Was Session betrifft gab es seit PHP 5.0 108 Bugbeseitigungen oder Ergänzungen oder Neuerungen.
Tatsächlich kann es auch bei einer frühen 5.3 er Version sein das diese Technik ums verrecken nicht funktionieren wird.
Tatsächlich kann es auch bei einer frühen 5.3 er Version sein das diese Technik ums verrecken nicht funktionieren wird.
Unterm Strich wird Otto Normalverbraucher davon nichts wissen wollen weil er es nicht benötigt.
Agenturen und Anbieter mit komplexen Strukturen haben aber genau das Problem mehr als einmal.
Agenturen und Anbieter mit komplexen Strukturen haben aber genau das Problem mehr als einmal.
Keine Kommentare:
Kommentar veröffentlichen