![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 124 Pomógł: 0 Dołączył: 8.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Wie ktos jak ten mechanizm dziala dokladnie?
u mnie na webservie nie wnosi to zadnej roznicy do dzialania skruptu, gdzie sesje ustawiam raz... a pozneij wykonuje 10 kolejnych krokow korzystajac z ustawionej zmiennej. Dlaczego tak sie dzieje? Czy wniesione prawdopodobienstwo nie powinno usunac tych danych? z 1 akcji? A ogolnie chodzi o to, ze pojawil sie pewnien losowy blad, raz na kilkadziesiat wywlan skryptu w polowie tych 10 krokow, sesja znika, za czym przemawialby mechanizm gc. Czy moglby mi ktos rozjasnic dzialanie smieciarza? I przyblizyc mi odpowiedz na pytanie: "dlaczego on nie usunal danych jak dalem mu 100% prawdopodobienstwo?" -------------------- TESTWIEDZY.PL - Przetestuj swoją wiedzę...
Nie ma rzeczy niemożliwych. Niemożliwe wymaga jedynie więcej czasu... Pracujemy na Ciebie! - MINDFLOW.PL |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Nieautoryzowani Postów: 92 Pomógł: 15 Dołączył: 21.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
ten mechanizm uruchamiac sie powinien zawsze (przy twoim ustawieniu) ale usuwa tylko przeterminowane dane, czyli sesje ktore juz wygasly bo uplynal limit czasu (session.gc_maxlifetime).
Ten post edytował heaven 15.12.2006, 14:25:27 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 124 Pomógł: 0 Dołączył: 8.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
A jaka sesja ulega przedawnieniu?
Jezeli dam np. $_SESSION['x'] = 1; i czytam z niej przez kolejnych 55 akcji nie zmieniajac jej, po czasie session.gc_maxlifetime taka dana jest przedawniana? Dobrze rozumiem? -------------------- TESTWIEDZY.PL - Przetestuj swoją wiedzę...
Nie ma rzeczy niemożliwych. Niemożliwe wymaga jedynie więcej czasu... Pracujemy na Ciebie! - MINDFLOW.PL |
|
|
![]()
Post
#4
|
|
Grupa: Nieautoryzowani Postów: 92 Pomógł: 15 Dołączył: 21.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
przedawnieniu moze ulec tylko cala sesja jesli nie byla uzywana przez session.gc_maxlifetime. Czyli jesli w sesji zapisujesz $_SESSION['x'] i $_SESSION['y']. Nastepnie korzystasz tylko z $_SESSION['x'] tak ze odstepy nie przekraczaja session.gc_maxlifetime to $_SESSION['y'] tez nie wygasnie. albo wygasa cala sesja albo zaden jej skladnik
ponoc session.gc_maxlifetime = 1440s = 24m jest jeszcze session.lifetime - czas waznosci cookies wyslanego do przegladarki ktory trzyma numer danej sesji. defaultowo ustawiony na 0 co oznacza ze "do zamkniecia przegladarki" utrata sesji wystepuje jeszcze przypadku gdy ktos w przegladarce wpisze strone www.strona.pl i pracujac na niej kod spowoduje przekierowanie na strone strona.pl. wtedy cookies widzi to jako inna strone i nie wysle numeru sessji a co za tym idzie utworzy sie nowa Ten post edytował heaven 15.12.2006, 18:55:16 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 124 Pomógł: 0 Dołączył: 8.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Ahm, czyli czytanie jakeijkowleik danej w sesji, nie pozwoli na jej usuniecie... no to kurde;/
Hm a przy okazji spytam, czy mozna zatrzymac dana sesje po wylaczeniu i wlaczeniu strony? Tzn , pewne tak ale jakim mechanizmem? Chodzi mi o cos takiego jak na php.net jest jak sie wpisuje funkcje do wyszukiwania. -------------------- TESTWIEDZY.PL - Przetestuj swoją wiedzę...
Nie ma rzeczy niemożliwych. Niemożliwe wymaga jedynie więcej czasu... Pracujemy na Ciebie! - MINDFLOW.PL |
|
|
![]()
Post
#6
|
|
Grupa: Nieautoryzowani Postów: 92 Pomógł: 15 Dołączył: 21.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
No wydaje mi sie że jesli chcesz zachowac całą sesje mo musisz odpowiednio ustawic session.lifetime ale ja nigdy tego nie robilem - zachowaja sie wszystkie zminne danej sessji. jesli chcesz przechowac tylko jedna zmienna to chyba lepiej na cookies'ach to zrobic.
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 124 Pomógł: 0 Dołączył: 8.05.2006 Ostrzeżenie: (0%) ![]() ![]() |
Hm a czy mozliwe jest by losowo pojawiajace sie bledy (nawet nie odnoszace sie do sesji) byly w jakis sposob wina serwera? Co prawda blad pojawia sie gdy uzywam sesji, ale jak widac, ustawienia i sam mechanizm nie spowoduje jej utraty... A jednak raz na nie wiem eh.. moze 30 operacji skrypt dziala blednie... dlaczego tak sie moze dziac? Takie cos strasznie mi utrudnia prace, jako ze nie moge dokladnie zdiagnozowac problemu, bo nie wiem keidy on sie wydarzy.. ;/
-------------------- TESTWIEDZY.PL - Przetestuj swoją wiedzę...
Nie ma rzeczy niemożliwych. Niemożliwe wymaga jedynie więcej czasu... Pracujemy na Ciebie! - MINDFLOW.PL |
|
|
![]()
Post
#8
|
|
Grupa: Nieautoryzowani Postów: 92 Pomógł: 15 Dołączył: 21.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Trudno mi cos sensownego wykombinować :/. Ciekaw jestem gdzie przechowujesz pliki sesji? moze w katalogu tmp systemowym (tak chyba jest defaultowo)(pliki maja prawdopodobnie taka nazwę "sess_e56744ea542b1190a746904ab47cf8d2" czyli sess_(plus identyfikator sesji))? Moze system co jakis czas wywala te pliki (chcociaz jak dla mnie powinien usunac dopiero po reboot'cie). Za duzo "może". Mysle zebys przerobil sobie sesje aby byly zapisywane w bazie. Wysłałem Ci ksiazkę w której jest opisane krok po kroku jak to zrobic. W kodzie nie bedziesz musial nic zmieniac. Dopiszesz tylko pare linijek i utworzysz dodatkowa tabele w bazie. Jeśli na cos jeszcze wpadne do dam znac na PW. pozdrawiam...
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 20:35 |