Toon posts:

[perl] php-like session systeem

Pagina: 1
Acties:

Verwijderd

Topicstarter
ik hep dus al effe op cpan en perldoc en op google gezocht, maar ik kan niet echt iets bruikbaars vinden.

ik wil dus in perl een session systeem gebruiken wat ongeveer hetzelfde is als in php.

weet iemand of dit al bestaat? je kunt wel apache session gebruiken maar dat werkt voor geen meter is mij verteld.

anders moet ik het zelf gaan schrijven, hoe werkt een session systeem nou precies??? (ik bedoel dus niet hoe je het aanroept maar het interne proces)

Verwijderd

deja vu? [topic=433610/1/25]

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 18:31
Wat je in principe nodig hebt, is een manier om gegevens op een uniforme manier te kunnen wegschrijven en inlezen. Voor 'normale' datastructuren als hashes en references is dit nog wel te doen (hoewel 't wel ingewikkeld wordt met cyclische structuren).

PHP gebruikt hiervoor de (un)serialize functies en kan ook objecten serializen door de inhoud weg te schrijven. Bij complexere objecten (die bijvoorbeeld sockets openhebben) werkt dat niet zo eenvoudig. Ook filedescriptors zijn natuurlijk niet zonder meer te serializen, aangezien geopende bestanden en sockets later niet meer beschikbaar kunnen zijn.

Stel echter, dat je een datastructuur in binaire vorm kan representeren, dan is het een kwestie van die binaire vorm op een zekere plek op te slaan (PHP gebruikt logischerwijs /tmp) en de bestandsnaam (of een deel daarvan) als identifier te gebruiken.

Die identifier moet heen en weer gegeven worden, tussen requests van dezelfde sessie, zodat je elke keer de weggeschreven datastructuur weer kan inlezen. PHP stuur die session ID ofwel via een cookie, ofwel via 't query-deel van URL mee.

Op zich is het dus niet zo ingewikkeld om zelf sessiebeheer te schrijven in Perl, mits je genoegen neemt met enige beperkingen op de typen gegevens die je opslaat in je sessie. Ik wil trouwens niet beweren dat je 't zelf moet schrijven; waarschijnlijk bestaat er al iets soortgelijks ('t is Perl, hè), maar ik zou niet weten hoe/wat.

  • Red Sonja
  • Registratie: Juli 2001
  • Laatst online: 01-07 13:16

Red Sonja

Linux: power to de wortel

Op donderdag 20 juni 2002 16:36 schreef Zef het volgende:
deja vu? [topic=433610/1/25]
Dat is volgens mij niet de enige.. heb die vraag wel eens vaker gezien.. heb je trouwens Apache::Session al eens zelf geprobeert??

And the beast shall be made legion. Its numbers shall be increased a thousand thousand fold. The din of a million keyboards like unto a great storm shall cover the earth, and the followers of Mammon shall tremble. from The Book of Mozilla, 3:31


  • _DeWie_
  • Registratie: November 2001
  • Laatst online: 10-04 16:23
Ik gebruik naar volle tevredenheid :
use Apache::Session::MySQL;

Werkt erg lekker.

Verwijderd

Topicstarter
Op donderdag 20 juni 2002 16:36 schreef Zef het volgende:
deja vu? [topic=433610/1/25]
lees het topic maar eens
ik vraag of er mensen zijn met ervaringen enzo, en dan wordt ie gelijk dichtgegooit omdat grum dat roept en meneer d2k de draad niet goed heeft gelezen

en toen had ik niet zo'n zin om het zelf te schrijven, nu is het bijna vakantie en het lijkt me toch wel handig om zo'n sessie systeem te hebben B-)

  • Grum
  • Registratie: Juni 2001
  • Niet online
:r ofzo :Z
Pagina: 1