Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> System sesji - czy mój kod jest optymalny?
klapaucius
post
Post #1





Grupa: Zarejestrowani
Postów: 223
Pomógł: 3
Dołączył: 4.07.2009
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Witam. Oto mój kod związany z systemem sesji ma na mojej stronie. Chodzi tu o przechowywanie zmiennej z identyfikatorem użytkownika oraz czasem, po którym sesja wygasa:
  1.  
  2. if (!isset($_SESSION['inicjuj'])){ // 1 zabezpieczenia sesji
  3. $_SESSION['inicjuj'] = true;
  4. $_SESSION['ip'] = $_SERVER['REMOTE_ADDR'];
  5. }
  6. if($_SESSION['ip'] != $_SERVER['REMOTE_ADDR']){ // 2 zabezpieczenie sesji
  7. header("Location: ../index.php?page=glowna");
  8. }
  9.  
  10. $intTimeoutSeconds = 600; // ustawienie czasu sesji
  11.  
  12. if (!isset($_SESSION['zalogowany'])) { // jeśli zmienna nie jest zarejestrowana
  13. $_SESSION['zalogowany'] = 0; // przypisz jej początkową wartość
  14. }elseif(($_SESSION['intLastRefreshTime']+$intTimeoutSeconds)<time()){
  15. if($_SERVER['PHP_SELF'] != '/index.php'){
  16. header("Location: ../index.php?page=glowna&sesja_wygasla=tak");
  17. }else{
  18. header("Location: ../index.php?page=glowna");
  19. }
  20. }
  21.  
  22. $_SESSION['intLastRefreshTime'] = time();
  23.  
  24. if($_SESSION['zalogowany'] == 0 && $_SERVER['PHP_SELF'] == "/game/index.php"){ // jesli uzytkownik nie jest zalogowany
  25. header("Location: ../index.php?page=glowna");
  26. }elseif($_SESSION['zalogowany'] != 0 && $_SERVER['PHP_SELF'] == "/index.php"){ // podobnie jak wyzej
  27. header("Location: game/index.php?page=main");
  28. }


Czy kod jest w miarę optymalny? Czy coś w nim trzeba zmienic? Jak narazie działa ale wydaje mi się ze jest trochę za długi i że ma jakieś błędy... Czy mam rację? Czy można go jakoś bardziej zoptymalizować czy jest ok?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
darko
post
Post #2





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Może nie aż tak, że od razu wywalić. Ogólnie kod szału nie robi, a i też niewiele z bezpieczeństwa sobą reprezentuje. Oczywiście na potrzeby własne i treningowo można takie skrypciki pisać. Trudno jest mówić o optymalizacji skryptu, który nie wykonuje żadnych zaawansowanych operacji (brak algorytmu) i objętościowo zajmuje około trzydziestu linii kodu.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 19:00