Wygaśnięcie cookies po zamknięciu przeglądarki

0

Witam,

Mam problem z napisaniem ciasteczek. Nie wiem jak dokładnie napisać ciasteczka by po zamknięciu przeglądarki wylogowywało od razu użytkownika. Wiem, że to chodzi o time() ustawione na zero. Ale jak tego użyć? Mam zapisywać czas logowania w bazie i później porównać go? Jak zaprogramować cookies? Proszę o pomoc, wiem że to banał, ale nie radze sobie ajest mi to bardzo potrzebne :(

0

Nie nalezy ustawiac time() na zero, ale w parametrze funkcji setcookie() ustawic wartosc 0:

setcookie('foo', 'bar', 0);

Mozna tez pominac ostatni parametr ktory okresla czas wygasniecia cookies - wychodzi na to samo.

0

Na necie znalazłem coś takiego:

<?php
ini_set('session.gc_maxlifetime', 7200);
session_set_cookie_params(120);
?>

To podobno ustawia czas "życia" ciasteczek cookie.

0

Nieprawda. Nie chodzi tutaj o sesje, ale "reczne" ustawienie cookies - dodatkowo - na czas nieokreslony (do zamkniecia przegladarki)

0

Ja stosuje cos takiego:

 
    function clearCookie()
       {
              foreach($_COOKIE['cookie'] as $name => $value)
              {
             setcookie("cookie[$name]", NULL, time()-172800, '/', '', '0');
              }
              
       }
0

to nie działa mi :(
mam taki kod:

if($_POST['autologin'] != 'on'){
$dwamiesiace = time()+30;
 setcookie('ostatniawizyta', date("G:i - m/d/y"), $dwamiesiace); 
}
else{
$dwamiesiace = time()+60*60;
setcookie('ostatniawizyta', date("G:i - m/d/y"), $dwamiesiace); 
}
//cookies
if(isset($_COOKIE['ostatniawizyta'])){

    $visit = $_COOKIE['ostatniawizyta'];
	echo "Twoja ostatnia wizyta była - ". $visit;
}
else {
echo "Ciasteczko wygasło!";
	header("Location:./logout.php");
}




0

Prosze bardzo - prosty przyklad.
Wklej ten kod do pliku - np. foo.phpL

<?php

$value = isset($_COOKIE['foo']) ? $_COOKIE['foo'] : 0;
$value++;

setcookie('foo', $value);
echo $value;

?>

Teraz mozesz odswiezyc strone http://localhost/foo.php kilka razy i zauwazysz, ze licznik sie zwieksza (wartosc jest zapisywana w cookie).
Po zamknieciu przegladarki i wejsciu ponownie wartosc licznika ponownie zaczyna sie liczyc od cyfry 1.

1 użytkowników online, w tym zalogowanych: 0, gości: 1