Witam! Chciałem zrealizować wyświetlanie contentu raz na godzinowe wejście. Aby to zrobić użyłem następującego kodu:

  1.  
  2. $session = Session::instance();
  3. $param_name = "my_special_box".mktime(date("H",time()), 0, 0, date("m",time()), date("d",time()), date("Y",time()));
  4.  
  5.  
  6. $boks_show = $session->get($param_name, 0);
  7. //echo Kohana::debug($boks_show);
  8. $s->assign('boks_show', $boks_show);
  9. $session->set($param_name, 1);
  10.  


Sprawdzamy czy parametr sesji istnieje, jeśli nie to wyświetlamy i ustawiamy go. Uzyłem unikalnego timestampa dla danego dnia i godziny aby debugować. Problem w tym, że przy takim rozwiązaniu jak wchodzę, np. po 30h na stronę to treść nie wyskakuję - tak jakby taka sesja już była faktycznie ustawiona. Ale coś mi się wydaję, że chodzi o inicjowanie sesji przez Kohane w którym to momencie moja zmienna nie występuję lub nie jest '0' tylko odrazu '1' ?
Gdy testuję w otoczeniu godziny (manipulując parametrem czasu - zmieniając go dynamicznie) to wszystko działa poprawnie.


PS. Jak działa wygaśnięcie sesji w ogóle? Włączenie i wyłączenie przeglądarki powinno załatwiać sprawę?