Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sesja
Forum PHP.pl > Forum > PHP
MacPain
Przeglądam sobie taki artykuł http://pl.wikibooks.org/wiki/PHP/Sesje i sie tak zastanawiam dlaczego w tym kodzie:
  1. <?php
  2.  
  3. if (!isset($_SESSION['inicjuj']))
  4. {
  5. $_SESSION['inicjuj'] = true;
  6. $_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
  7. }
  8.  
  9.  
  10. if($_SESSION['ip'] !== $_SERVER['REMOTE_ADDR'])
  11. {
  12. die('Proba przejecia sesji udaremniona!');
  13. }
  14. ?>

w linijce:
  1. <?php
  2. if (!isset($_SESSION['inicjuj']))
  3. ?>

isset jest zaprzeczone. Może ktoś mi to wyjaśni bo jak dlamnie nie powinno być zaprzeczone.
devnul
jeżeli nie istnieje - wygeneruj nowe id i ustaw inicjiuj na true (czyli przytwierdzenie sesji do danego kompa)

jeśli byłoby tak jak mówisz sesja była by na nic (jak i samo zabezpieczenie) b każdorazowo regenerował by się ip i ustawiany byłby index inicjiuj co za tym idzie pierwszy warunek wykonywałby sie zawsze a drugi nigdy
MacPain
Możesz to poprzeć jakimś przyładem questionmark.gif?
devnul
przykład sam podałeś wyżej - ja Ci go tylko tłumacze. Zastanów się:
isset zwraca true jeśli zmienna istnieje a false jesli nie, analogicznie !isset zwraca false jesli zmienna istnieje a true jesli nie. w tym wypadku warunek wykona się jesli zmienna nie będzie istniała (!isset), wtedy ustawiamy podsawowe wartości sesji (ip i identyfikator świadczoący o tym że sesja została jużzainicjalizowana). Proste jak budowa cepa
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.