-4200 służy tylko do zniszczenia ciasteczka. Pliki cookie są niszczone poprzez ustawienie dla nich czasu w przeszłości. Tak więc ustawienie 4200 sekund wstecz jest tak samo efektywne jak 1 sekunda wstecz.
Istnieje wiele metod wylogowania użytkowników. Możesz mieć własny zestaw plików cookie z czasem ostatniej aktywności (ustaw czas za każdym razem, gdy użytkownik odwiedza stronę). Na początku każdego skryptu dołącz funkcję, która pobiera to ciasteczko i sprawdza wartość, która powinna zawierać czas ostatniej aktywności. Jeśli ten czas jest starszy niż dozwolony czas nieaktywności, zniszcz ten plik cookie i zniszcz również swoją sesję, jeśli nie, zaktualizuj wartość do aktualnego czasu.
Oczywiście możesz również przechowywać w samej sesji ostatni czas aktywności, co jest znacznie bardziej efektywnym sposobem usuwania narzutów związanych z przesyłaniem plików cookie i zarządzaniem nimi.
EDYTUJ
Poniżej znajduje się minimalny kod do sprawdzenia czasu ostatniej aktywności i wylogowania użytkownika:
function login(){
//check login username/pass etc...
$_SESSION['last_active_time'] = time();
}
function auth(){
if($_SESSION['last_active_time'] < (time() - 1800)){ //1800 is 30 minutes (time in seconds)
logout(); //destroy the session in the logout function
}
else{
$_SESSION['last_active_time'] = time();
}
//do some auth related things
}
Taka jest podstawowa logika. Oczywiście będziesz musiał zaimplementować inne rzeczy, których potrzebujesz, wraz z zabezpieczeniami, sprawdzaniem itp....