[Prototyping] Lege PHP sessies

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik heb een web-applicatie gemaakt die gebruikt maakt van PHP5 in combinatie met Prototyp JS 1.5
Als een gebruiker inlogt wordt er in de sessie een user_id weggeschreven. Deze is nodig om de gebruikersrechten te bepalen binnen de web-applicatie. Nu is het echter zo dat de sessie wordt leeg gegooid, zodra ik een request uitvoer. Dus kan ik ook geen rechten bepalen.

Ik heb op het web er zeer weinig over kunnen vinden...

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Hoe moeten wij je kunnen helpen als je geen relevante (dus niet alle) code laat zien? :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Euh dat snap ik...
Kennelijk begrijp je het probleem niet...

Het gaat er dus om dat de sessie in het begin wel keurig wordt gezet, maar dat de sessie wordt leeg gegooid zodra ik een request met AJAX uitvoer.

Het probleem met sessies en AJAX is algemeen bekend (Google maar eens), want zodra ik mijn applicatie laat draaien zonder het gebruik van prototyping wordt de sessie wel onthouden.
Het probleem zit dus echt in het gebruik van AJAX.

Ik hoop dan ook dat iemand anders weleens tegen dit probleem is aangelopen en een oplossing ervoor weet.

Acties:
  • 0 Henk 'm!

  • Jurgle
  • Registratie: Februari 2003
  • Laatst online: 24-06 00:27

Jurgle

100% Compatible

Zodra je een pagina genereerd met PHP weet je de SESSIE_ID, die kan je dan toch in de JavaScript parsen zodat deze in een AJAX request als parameter wordt meegegeven?

My opinions may have changed but not the fact that I am right ― Ashleigh Brilliant


Acties:
  • 0 Henk 'm!

  • mithras
  • Registratie: Maart 2003
  • Niet online
Je snapt het verschil tussen serverside en clientside :?

Anders snap ik niet wat jou probleem nu eigenlijk is :)

Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
Is dat in alle browsers zo? Zijn alle request naar hetzelfde domein? (Ik weet dat crossdomein requests (nog) niet mogelijk zijn, maar misschien dat een request naar een subdomein problemen veroorzaakt.) Lijkt me trouwens sterk dat prototyping in Javascript hier iets mee te maken heeft. Misschien dat het framework waar je het over hebt op een vreemde manier requests doet, maar dat heeft daar niet zo veel mee te maken.


Edit:
Jurgle's suggestie zou alleen van toepassing zijn als je browser geen cookies accepteert, anders leest je PHP script de session ID namelijk daar uit.

[ Voor 16% gewijzigd door Michali op 31-10-2007 19:02 ]

Noushka's Magnificent Dream | Unity


Acties:
  • 0 Henk 'm!

  • Cartman!
  • Registratie: April 2000
  • Niet online
Als ik het goed begrijp verdwijnt je session dus nadat je een call via javascript doet naar je server (xmlhttp request). Dan vind ik de session_start(); reactie niet zo heel gek, als ie deze niet oppikt zou t misschien onderbroken raken en geen user id kunnen vinden. De vraag is dus een beetje ook hoe je de sessies opslaat, in de url of in een cookie. Als je het alleen in de url meegeeft moet je dit in je javascript call ook meesturen. Denk wel aan 'session fixation' als je hier gebruik van maakt, kan best tricky zijn.

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Verwijderd schreef op woensdag 31 oktober 2007 @ 18:34:
[...]

Euh dat snap ik...
Kennelijk begrijp je het probleem niet...
Dat je probleem niet begrepen wordt vind ik niet zo gek, vooral ook aangezien je nog steeds stug volhoudt in het niet geven van voldoende info. Misschien heb je wat aan Programming Beleid - De "quickstart"?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1