Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: dublowanie sesji php
Forum PHP.pl > Forum > PHP
borpaw
Jak uruchamiam skrypt w tej samej przeglądarce mimoże nadaje nowy numer każdej nowej sesji to ostatnie wywołanie skryptu przykrywa mi poprzednie
efekt jest taki że przykładowo w trzech odsłonach mam te same wartości w tablicy $_SESSION, co z tym zrobić?

  1.  
  2.  
  3.  
  4.  
  5. (....)
  6.  

naitsabes
a zamykasz sesje ?
borpaw
ale jesli odpalam kilka razy ten sam skrypt i na każdym z nich coś robie w tym samym czasie to sesje nie są pozamykane
naitsabes
nie zamykaj sesji bedzie dobrze smile.gif jezeli oczywiscie dodasz $SESSION['number'] += 1;
borpaw
nic to niestety nie zmieniło
nospor
1) po grzyba wogole za kazdym razem robisz to:
session_regenerate_id(false);
po grzyba wogole to robisz?

2) pokaz kod, którym cos przypisujesz do sesji
3) wlacz wyswietlanie wszystkich bledow. moze sesja ci wogole nie startuje
Temat: Jak poprawnie zada pytanie
borpaw
NP:

  1.  
  2. $query= mysql_query("select * from airforum_USERS where USER_ID='$user_id'", $connection);
  3. if($user_wiersz = mysql_fetch_row($query))
  4. {
  5.  
  6. $_SESSION["professionsID"] = $user_wiersz[5];
  7. $_SESSION["countryID"] = $user_wiersz[6];
  8. $_SESSION["baseID"] = $user_wiersz[7];
  9. $_SESSION["airlineID"] = $user_wiersz[8];
  10. $_SESSION["aircraftID"] = $user_wiersz[9];
  11.  
  12. (...)
  13.  


regenerate robie tylko przy starcie pierwszej strony
nospor
Nie za bardzo rozumiem jaki masz problem. Zakładam, że $user_id masz takie samo, wiec nic dziwnego ze za kazdym razem masz te same dane.
Może opisz problem ciut dokładniej.
borpaw
$user_id nie jest takie samo właśnie

loguje się na różnych userów do serwisu każdy ma inne id, ale każdy kolejny przykrywa poprzedniego w obrębie jednej przeglądarki a serwis jest odpalony
kilka razy np w IE na kilku kartach. Jesli w tym samym czasie wejde do serwisu z innej przeglądarki np firefox to w firefox jest dobrze ale odpale kolejną karte firefox i jest to samo.
nospor
eee. trzeba było od razu tak mówić. smile.gif

Nie załapałęś na czym polega session_regenerate_id()
To nie powoduje, ze kazdy user bedzie miał inną sesje, ale aktualna przeglądarka zmieni tylko i wyłącznie ID sesje. Kolejne wejście spowoduje, iż będzie ta sama sesja ino że bedzie miała inne ID. Stosuje się to po to, gdy np. ktoś wykradnie ci dzieki atakowi XSS twoje aktualne ID sesji, a aplikacja np. po 5 minutach zmieni ID na inne. Jesli wlamywacz w ciagu 5 minut nie wykorzysta ID co wykradł to już nie skorzysta.

Podsumowując: w obrębie jednej przeglądarki masz jedną sesje. Chce się logować innym userem to skorzystaj z innej przeglądarki
tr@k
Jeśli dobrze rozumiem, chcesz mieć osobne sesje dla każdej karty?
borpaw
tak chce mieć osobne sesje, czy da sie to zrobić w obrebie jednej przeglądarki?
nospor
Cytat
czy da sie to zrobić w obrebie jednej przeglądarki?
A teraz czytamy ze zrozumieniem:
Cytat
Podsumowując: w obrębie jednej przeglądarki masz jedną sesje. Chce się logować innym userem to skorzystaj z innej przeglądarki
Czyli w skrócie: NIE
borpaw
jak zrobić mechanizm automatycznego logowania? przez ciastka? Tak żeby uzytkownik nie mógł się zalogować na innego w obrebie przeglądarki
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.