Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Sesja
Forum PHP.pl > Forum > Przedszkole
xamrex
Witam,
Mam pytanie odnośnie sesji i cookisów.

Otóż załóżmy, że zaloguje się na jakiejś stronie www(powiedzmy na stronie www.nasza-klasa.pl) i teraz jeśli odwiedzę ją np. po 15 dniach, to będę wylogowany i będę musiał zalogować się na stronie.
Czym to jest spowodowane? Wygaśnięciem cookisa, czy może ma to coś związanego z sesją.

Może sprecyzuję co chcę osiągnąć i czy to jest możliwe.
Załóżmy, że wchodzę na portal nasza-klasa.pl, loguję się i zamykam przeglądarkę.

Otwieram przeglądarkę (nie wchodzę na nasza-klasa.pl) np. po 15 dniach, i czy jest możliwość, abym teraz zmodyfikował cookie tak, że jak wejdę na tę stronę, to będę dalej zalogowany?

Czy takiej rzeczy nie da się zrobić?
potreb
Nie da się.
xamrex
Cytat(potreb @ 1.01.2011, 14:39:08 ) *
Nie da się.

Nie da się,bo ten czas po jakim jest użytkownik wylogowywany ustawiony jest na serwerze(gdzie stoi strona) tak?
A da się chociaż jakoś sprawdzić, po ilu godzinach/dniach, użytkownik zostanie wylogowany?
potreb
A sprawdziłeś chociaż że się nie da? Gdy zapisujesz ciasteczko w php masz możliwość ustawienia czasu wygasania. Możesz ustawić na tyle czasu na ile uważasz. Ciasteczko jest zapisywane na twoim komputerze. Jeżeli chcesz edytować cookiesy, możesz skorzystać z dodatków do Firefoxa.
xamrex
Cytat(potreb @ 1.01.2011, 16:25:35 ) *
A sprawdziłeś chociaż że się nie da?


Łoł...
Naprawdę trudno się z Tobą dogadać.
Przecież SAM napisałeś, że się nie da (w poście numer 2), to po co ja mam to sprawdzać.
Wiem, że mam możliwość w php ustawienia czasu wygasania, ale tylko wtedy kiedy mam dostęp do serwera (do plików)

Ja Nie mam dostępu do serwera, więc nie mogę tego czasu edytować.

Załóżmy, że czas wygaśnięcia ustawiony jest na 5 dni.
Czy jeśli po opuszczeniu strony, edytuję cookisa i zmienię, że czas wygaśnięcia jest np. w styczniu 2012, to jeśli wrócę na tą stronę po np. 15 dniach (z tym zmienionym cookisem, który ma przedłużoną "żywotność") to będę zalogowany dalej?
Czy to tak nie działa?


W skrócie załóżmy, że chcę być zalogowany na tym forum, nawet jeśli wrócę dopiero na to forum po 1 miesiącu, to chcę być zalogowanym (aby nie musieć się znowu logować). Czy jeśli przedłużę teraz żywotność cookisa (do 2012) i wrócę tutaj za 1 miesiąc to będę dalej zalogowany?
esos
Mam nadzieję, że nie ma takiej możliwości.

Do fajnych sytuacji by to doprowadziło: wchodzisz na czyjś komputer (tzn siadasz przy nim fizycznie), zaczynasz grzebać w cookies, 'aktywujesz' sobie status zalogowania przesuwając datę wygaśnięcia, wchodzisz na czyjeś konto na n-k w sumie bez logowania i czynisz co chcesz smile.gif nie myślę już o poczcie, czy bardziej newralgicznych miejscach typu bank...
xamrex
A da się chociaż jakoś sprawdzić, po ilu godzinach/dniach, użytkownik zostanie wylogowany?
Crozin
Odpowiedź do pytania (z pierwszego postu) jest jedna: to zależy.

Wszystko zależy od tego jak działa ich mechanizm uwierzytelniania na serwerze. Jeżeli opiera się on wyłącznie na identyfikatorze pochodzącym z ciasteczka i nie mają w zwyczaju usuwać przestarzałych (z ich punktu widzenia) danych to tak - będziesz mógł przedłużyć żywotność swojej sesji zmieniając żywotność ciasteczka.

W praktyce jest to raczej mało prawdopodobne, bo:
1. Zapewne poza identyfikatorem z ciasteczka sprawdzają inne rzeczy (np. adres IP), które mogą się w ciągu tych 15 dni zmienić.
2. Zapewne przestarzałe dane na serwerze (czy to w postaci plików, rekordów w bazie lub bezpośrednio w pamięci) są usuwane częściej niż raz w miesiącu.
3. Najprawdopodobniej w samej sesji (ależ nie lubię tego określenia) jest zapisany czas jej wygaśnięcia, więc nawet jeżeli uda Ci się ją przywrócić po tych 15 dniach, system uzna że sesja wygasła -> wyloguje cię.

Cytat
A da się chociaż jakoś sprawdzić, po ilu godzinach/dniach, użytkownik zostanie wylogowany?
Być może żywotność sesji jest równa żywotności ciasteczka (nawet często się to zdarza). Jednak nie zawsze tak jest - wtedy musisz się zalogować (bo wylogowanie będzie świadczyło i utraceniu sesji), i spróbować odświeżyć stronę po X minutach. Podstawowe długości jakich się używa to: 10, 15, 24, 30, 60 minut.
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.