Próbowałem coś następującego: najpierw wejść w link wyświetlający wskazany przez nas numer (jeśli weszlibyśmy na to jako na pierwszą stronę, chciałem, żeby nie robiło napisu wyświetlania sesji), a potem wejść na stronę losującą numer, która ustawi naszego "foo" na "bar", a następnie wejść na stronę z wybieranym numerem i już powinien napis się ustawić. Zamiast tego po wejściu na jakąkolwiek stronę wczytywane są z miejsca zmienne sesji ze wszystkich kontrollerów i owy napis wyświetla się od razu. Ktoś ma pomysł, jak to rozwiązać? Może istnieje funkcja, która by sprawdzała, czy strona została już odwiedzona i wtedy załadować zmienną sesyjną?
/**
* @Route("/lucky", name="lucky_page")
*/
public function luckyAction(Request $request)
{
$session = $request->getSession();
$session->set('foo', 'bar');
$number = mt_rand(0,100);
return $this->render('lucky/index.html.twig', array('number' => $number)
);
}
/**
* @Route("/lucky/{number}", name="lucky_number_page", requirements= {"number" : "\d+"})
*/
public function luckyNumberAction (Request $request, $number)
{
$session = $request->getSession();
if ($session->get('foo'))
{
echo "WYKRYTO SESJE";
}
return $this->render('lucky/index.html.twig', array('number' => $number));
}