Concurrent users ?
Ben bezig met login-schermen middels $_SESSION, maar als user 2 aangelogt, krijgt user 1 de gegevens van user 2.
Het maakt niet uit of ik 1 browserscherm gebruik (met een nieuw tabblad), of 2 aparte browserschermen.
Hier wat code :
Gemakshalve laat ik wachtwoord weg, omdat het slechts een variabele toevoegd, voor het verhaal maakt het niet uit.
Scherm 1:
<INPUT TYPE="Text" NAME="Gebruikersnaam">
Scherm 2:
session_start();
$_SESSION["Who"] = $_POST["Gebruikersnaam"];
Overige schermen :
session_start();
$Who = $_SESSION["Who"];
Vervolgens vergelijk ik, door de hele site, $Who met de userrechten-tabel in de database.
Staat de user in de tabel en heeft ie de juiste rechten, dan mag ie door, anders aanlogscherm.
Tot nu toe werkt alles prima.
Vervolgens log ik in als een andere user ( die andere rechten heeft in de userrechten-tabel ).
Als ik dan een refresh doe bij de eerst aangelogde user, dan geeft $_SESSION["Who"] bij user 1, de gegevens terug van user 2.
Komt het wellicht omdat ik op dezelfde pc aanlog ?
Heeft iemand enige idee wat er fout gaat, of beter nog, hoe ik een aanloggen met twee verschillende users ?
Thx !
gr. Robert
Gewijzigd op 10/06/2012 21:09:03 door Robert van Leeuwen
wat bedoel je met de gegevens? de naam, adress o.i.d. of de rechten?
In mijn tabel staat de user gekoppeld aan een rol.
Een bepaalde rol mag bv. alleen lezen
Stel
User/Rol-tabel
User 1 - Rol 1
User 2 - Rol 2
Rol/rechten-tabel
Rol 1 - Lezen
Rol 2 - Schrijven
etc
Gewijzigd op 10/06/2012 21:22:00 door Robert van Leeuwen
Zelfde pc en zelfde browser met verschillende tabbladen is altijd één en dezelfde session. Wil je zoiets testen open dan bv. Firefox en Internet Explorer en dan heb je te maken met verschillende sessions.
Zoiets had ik al eerder gezien, vandaar dat ik ook geprobeerd heb met een nieuwe browsersessie (dus nog een keer geopend met dubbelklik op het IE-icoon). Dat werkte voor cookies i.c.m. javascript prima.
Werkt het met verschillende browsers goed?
Toevoeging op 10/06/2012 22:24:42:
't is Firefox geworden.
Met twee verschillende browsers op 1 pc werkt het wel.
Echter, twee Firefox-en open (1 browser 2 tabbladen, of 2 eigen browsersessies) werkt het ook niet.
Blijft bijzonder die sessies...
In elk geval, e.e.a. kan ik nu verder testen.
Bedankt !
Succes verder.
Sessies blijven in een browser plakken totdat je het browser afsluit, dan verdwijnen ze dus. Een nieuw tabblad, een nieuw venster, het werkt allemaal niet. Waarom niet? Omdat je nog steeds in hetzelfde browser zit.