Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> czas trwania sesji.
DeyV
post
Post #1





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Mam mały problem w związku z czasem trwania sesji. Mimo że w php jestu ustawione by sesja trwała 180 min, a ja dodtkowo, przy pomocy
[php:1:4a40f269f0]<?php
session_cache_expire( 360 );
session_name( 'nazwa');
session_start();
?>[/php:1:4a40f269f0]
jeszcze przedłużam jesj czas do 360 min, to sesje zrywają mi się po ok. 30 min. Co może mieć na to wpływ?

Oraz 2 pytanie - nie mogę sobie przypomnieć funkcji która pozwalała na ustawienie by sesja trawała dłużej niż sesja przegladarki, tj. by jej identyfikator był, jełśi to mołżiwe, przechowywany przy pomocy ciasteczka z ustawionym czasem istnienia.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
Kocurro
post
Post #2





Grupa: Zarejestrowani
Postów: 461
Pomógł: 32
Dołączył: 17.09.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Nie jestem pewien ale chyba to, żeby sesja żyła dłużej od przeglądarki możesz a w zasadzie to musisz ustawiać w konfiugracji php
Go to the top of the page
+Quote Post
KaMeLeOn
post
Post #3





Grupa: Zarejestrowani
Postów: 680
Pomógł: 0
Dołączył: 1.10.2002
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat
Mam mały problem w związku z czasem trwania sesji. Mimo że w php jestu ustawione by sesja trwała 180 min, a ja dodtkowo, przy pomocy
[php:1:a1710ea15c]<?php
session_cache_expire( 360 );
session_name( 'nazwa');
session_start();
?>[/php:1:a1710ea15c]
jeszcze przedłużam jesj czas do 360 min, to sesje zrywają mi się po ok. 30 min. Co może mieć na to wpływ?

session.cache_expire nie określa czasu trwania sesji tylko czas trzymania stron sesyjnych w pamięci cache przeglądarki.
Od czasu trwania sesji jest session.gc_maxlifetime.
Domyślnie session.gc_maxlifetime = 1440
1440/60 = ok. 24 minut

Cytat
Oraz 2 pytanie - nie mogę sobie przypomnieć funkcji która pozwalała na ustawienie by sesja trawała dłużej niż sesja przegladarki, tj. by jej identyfikator był, jełśi to mołżiwe, przechowywany przy pomocy ciasteczka z ustawionym czasem istnienia.

Od tego jest session.cookie_lifetime
Można to ustawić za pomocą [manual:a1710ea15c]session_set_cookie_params[/manual:a1710ea15c]

Lepiej jednak ustawiać obie opcje konfiguracyjne przez ini_set()...

Pozdrawiam
Go to the top of the page
+Quote Post
DeyV
post
Post #4





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




heh - tak mi jakoś nie pasował ten tekst w manualu na temat tej funkcji - jednak z uwagi na to, że nie znalałem nic bardziej pasującego - stąd dałem się zasugerować.
Th'x.
Go to the top of the page
+Quote Post
DeyV
post
Post #5





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Niestety - moja radość była przedwczesna.
Nadal na jednym serwerze sesja zrywa mi się stanowcoz za szybko. Co z tym zrobić?
Sesja jest teraz zaczynana w ten sposób.
[php:1:de906c0542]<?php
ini_set( 'session.gc_maxlifetime', 3600*4 );
ini_set( 'session.cookie_lifetime', 1800 );

session_name($conf_session_name . '_admin');
session_start();
// tu powstarzam ustawienia, poniewaz ... przed session_Start () tez nie działało...
ini_set( 'session.gc_maxlifetime', 3600*4 );
ini_set( 'session.cookie_lifetime', 1800 );
?>[/php:1:de906c0542]
Co z tym zrobic?
Go to the top of the page
+Quote Post
Kocurro
post
Post #6





Grupa: Zarejestrowani
Postów: 461
Pomógł: 32
Dołączył: 17.09.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


nie masz dostępu do normalnej konfiguracji php (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

możliwe, że gdzieś w niej jest coś ustawione by wcześneij outować...albo może coś skrypt zawodzi...ja miałem dużo problemów z sesjami ustawiane opcji w pliku php nie pomgło musiałem ręcznie ustawić w php.ini dłuższy czas trwania a jak w skryptach potrzbowałem mniejszy to ustawiałem porpzez ini (przez tą komendę mogłem tylko skrócić czas trwania a nie przełużyć) i nie wiem dlaczego tak się działo
Go to the top of the page
+Quote Post
spenalzo
post
Post #7





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

Ostrzeżenie: (0%)
-----


[php:1:2d3f09168e]<?php
ini_set( 'session.cookie_lifetime', 1800 );
?>[/php:1:2d3f09168e]
To jest pół godziny, nie powinno tam być więcej?
Go to the top of the page
+Quote Post
DeyV
post
Post #8





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Prometeus - ciekawe jest to co mówisz. Mam jednak nadzieję, że da się tego uniknąć, ponieważ system chodzi na komercyjnym serwerze, na którym każda zmiana dotyczy równoczenie setek kont. Można ją wprowadzić, ale jak to się odbije na innych...

Spen - wymyśliłem to sobie w ten sposób, że
a) sesja powinna trwać 4 godziny, jeśli ktoś nie zamyka przegladarki
(IMG:http://forum.php.pl/style_emoticons/default/cool.gif) jeśli ktoś jednak zamknie przegladarkę, a następnie w ciagu mniej niż 30 minut otworzy stronę ponownie, to nadal powinien być zalogowany.

Obawiam się jednak, że nie można mieć i jednego i drugiego. A szkoda.
Go to the top of the page
+Quote Post
Method
post
Post #9





Grupa: Zarejestrowani
Postów: 177
Pomógł: 6
Dołączył: 14.01.2003
Skąd: Warszawa

Ostrzeżenie: (10%)
X----


ta nie chcialbym sie wtracac do tej debaty ale wydaje mi sie ze problem tkwi raczej w konfigu serwera - bo w php,ini mozesz sobie co prawda ustawic sesje na jakis czas ale jak na serwerze nie przestawisz kurczaki nie pamietam jak sie nazywala, ale znalezc ja np w apachu nie problem, to i tak doopa
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.12.2025 - 20:37