Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sesje
Forum PHP.pl > Forum > PHP
Ralf
jak zrobic tak ze kiedy jedna sesja jest otwarta [zalogowal sie uzytkownik]
to jezeli koles loguje sie z tego samego kompa na innego usera nie otrzymywal wartosci z sesji poprezdniego usera

sprawa chyba wazniejsza
z jakiegos powodu uzytkownik wylaczyl przegladarke [nie wylogowal sie] jak wowczas zrobic cos co zalatwia session_destroy() czyli wywalic wszystkie dane sesji - generalnie usunac plik z danymi sesji

chyba cala sprawa rozbija sie o to jak wystartowac sesje z unikalnym [ takim ktorym mozna sterowac samemu] identyfikatorem sesji zeby mozna bylo kazde okno przegladarki rozrozniac

jak taka sprawa jest rozwiazana w serwisach jak np www.php.pl questionmark.gif?


i jeszce jedno pytanko
czy lepiej bawic sie i kombinowac z sesjami czy samemu zalatwic sobie obsluge przy pomocy cookie?questionmark.gif

za pomoc z gory dzieki
GeoS
Cytat
i jeszce jedno pytanko  
czy lepiej bawic sie i kombinowac z sesjami czy samemu zalatwic sobie obsluge przy pomocy cookie?questionmark.gif

Warto bawic sie sesjami, chociazby z powodu latwosci korzystania z nich i mozliwosci jakie daja.

Cytat
sprawa chyba wazniejsza  
z jakiegos powodu uzytkownik wylaczyl przegladarke [nie wylogowal sie] jak wowczas zrobic cos co zalatwia session_destroy() czyli wywalic wszystkie dane sesji - generalnie usunac plik z danymi sesji

Z tego co widze, to chyba troche nie zrozumiales celu powstania sesji. Maja one sluzyc do zapisywania waznych (z punktu widzenia codera strony) danych, zeby pozniej je wykorzystac.

Przetrzymywane w sesjach dane maja sie tyczyc danej sesji, czyli gosc wchodzi na strone i "tworzy" nowa sesje, a nie konkretnych danych, np. loginu. Chociaz dzieki mozliwosci pelnej kontroli sesji jest tez mozliwa zmiana identyfikatora sesji w momencie zalogowania sie nowego usera (chodzi o nowy login na tej samej maszynie).

Cytat
jak zrobic tak ze kiedy jedna sesja jest otwarta [zalogowal sie uzytkownik]  
to jezeli koles loguje sie z tego samego kompa na innego usera nie otrzymywal wartosci z sesji poprezdniego usera

Ale w tym celu wlasnie powstaly sesje, aby otrzymac stare dane :!:
Jezeli chcesz je wyczyscic, to robisz warunek: jesli sa jakies dane z poprzedniej sesji, to czyscimy wszystkie tam ustawione zmienne biggrin.gif
Ralf
widzisz sprawa jest inna tworzac sesje z jednego kompa nie moze sie zalogowac do tego samego serwisu dwoch userow bo niezamknieta sesja poprzedniego uzytkownika nie pozwala
powiedzmy ze masz obsluge konta pocztowego przez www i teraz masz dwa konta na dnym serwerze chcesz obydwa konta jednoczesnie przegladac
i co teraz jak zalogowales sie do serwisu i ponownie na drugie konto to nie mozesz otrzymywac tych samych danych - bo to jest bez sensu

teraz jak rozdzielic te dwie rzeczy

dane zpisywane sa w plikach ktore zwiazane sa z kompem usera jezeli dwoch userow korzysta z tego samego kompa to musza byc dwa oddzielne pliki

moze sie myle ale wydaje mi sie ze jezeli chcesz tworzyc sesje to powinna ona tylko trwac przez czas od momentu logowania do wylogowania lub rozlaczenia [z jakiegos innego powodu]
i dla kazdego okna przegladarki tworzona nowa sesja

jak to zrobic - moze ktos pomoze ?
Seth
Ten topic byl juz na forum :!:, wiec poszukacj sobie go i dowiesz sie tam tego co chcesz.
Ralf
Bylem tam
http://phppl.zone.pl/forum/viewtopic.php?t=230

Seth dzieki ale dwa razy juz czytalem i dalej nie znalazlem tam odpowiedzi - to moze Ty mi powiesz
JAK? zrobic zeby przy kazdym zalogowaniu tworzona byla nowa sesja

zreszta pytales jak w sytuacji gdy ktos sie nie wyloguje - w przypadku ciastek dobra wiem a w przypadku sesji questionmark.gif? - przeciez plik wciaz instnieje
i ponownie logujac sie masz dane z tamtej sesji
co ztym zrobic questionmark.gifquestionmark.gif


gajcy2 napisal
"Co do cookies - wysiadaja przy sesjach. Sesje dzialaja nawet wtedy, gdy gosc ma wylaczona obsluge cookies (ale z tego powodu przy nowych wejsciach na strone tworzone sa nowe sesje). SESID moze byc przekazywane w sposob transparentny dla klienta (widza strony). "


i nie wiem czy to jest prawda ze przy noych wejsciach tworzone sa nowe sesje - to chyba nie jest prawda !!!
czy dotyczy to tylko gdy koles ma wylaczona obsluge cookies?questionmark.gif?
itsme
loooknij tam jeszcze rz przedstawilem inne rozwiazanie za pomoca bazy mysql oraz URL milego czytania
Seth
Cytat
...
zreszta pytales jak w sytuacji gdy ktos sie nie wyloguje - w przypadku ciastek dobra wiem a w przypadku sesji questionmark.gif? - przeciez plik wciaz instnieje  
i ponownie logujac sie masz dane z tamtej sesji  
co ztym zrobic questionmark.gifquestionmark.gif

Poprostu usuwasz w takim przypadku cala zawartosc zmiennych z danej sesji.
Cytat
...
i nie wiem czy to jest prawda  ze przy noych wejsciach tworzone sa nowe sesje - to chyba nie jest prawda !!!
czy dotyczy to tylko gdy koles ma wylaczona obsluge cookies?questionmark.gif?
...

Przy sesjach jest tak, ze mozesz sobie wybrac albo cookies do sesji albo przekazac id sesji przez GET. Ta druga dziala nawet gdy cookies sa wylaczone (co chyba jest oczywiste)

Ja sporo ciekawych rzeczy dowiedzialem sie z tej strony: wdvl.internet.com/Authoring/Languages/php/Maintaining_state/

Proponuje tez sprobowac stworzyc wlasny system sesji.
GeoS
Cytat
gajcy2 napisal  
"Co do cookies - wysiadaja przy sesjach. Sesje dzialaja nawet wtedy, gdy gosc ma wylaczona obsluge cookies (ale z tego powodu przy nowych wejsciach na strone tworzone sa nowe sesje). SESID moze byc przekazywane w sposob transparentny dla klienta (widza strony). "


i nie wiem czy to jest prawda  ze przy noych wejsciach tworzone sa nowe sesje - to chyba nie jest prawda !!!
czy dotyczy to tylko gdy koles ma wylaczona obsluge cookies?questionmark.gif?


Sa wtedy, gdy tego SIDa nie przekazujesz dalej. Jesli chodzi o rozwiazanie twojego problemu, to:
1. sesje startuj dopiero po zalogowaniu
2. wartosc SID kontroluj we wlasnym zakresie (wtedy unikniesz problemu z logowaniem sie na dwa rozne konta z tego samego kompa)
Ralf
Mysle ze rozwiazanie z kontrola SID chyba jedyna sensowna droga do rozwiazania problemy

moze sa jakies wyprobowane/sprawdzone metoty kontroli - zarzadzania SID'em jak tego typu zarzadzanie realizujecie??

a ma ktors pomysl jak rozwiazac sprawe plikow ktore pozostaja po nieprawidlowo zamknietych sesjah - to z jednej strony moze byc cos w rodzaju dziennika niepoprawnie zamkntych sesji
itsme
nadal nie rozumiem dlaczego bawicie sie sejami ....
za wiel problemow ....
za wiel pytan ....
i za malo odpowiedzi ..
jak sie czegos nie rozumie lepiej samemu opracowac

pozdrawiam It`s_me
Ralf
Cytat
nadal nie rozumiem dlaczego bawicie sie sejami ....
za wiel problemow ....
za wiel pytan ....
i za malo odpowiedzi ..
jak sie czegos nie rozumie lepiej samemu opracowac  

pozdrawiam It`s_me


Moze masz racje ze duzo pytan a malo odpowiedzi ale to tylko kwestia czasu laugh.gif

i pewnie masz racje ze lepiej samemu cosik wymyslic ale fajnie jest umiejetnie korzystac z dostepnych mechanizmow i mozliwosci

a kto pyta wielbladzik biggrin.gif

dzieki za pomoc
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.