Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Sesje + system logowania
Forum PHP.pl > Forum > Przedszkole
Grzes1337
Witam. Pisze skrypt BugTrackera. Nadeszła chwila aby uruchomić logowanie.
  1. <?php
  2. require "globals.php";
  3. $_SESSION['sess_id'] = md5(uniqid(''));
  4. echo $_SESSION['sess_id'];
  5. dbconnect();
  6. require "menu.php";
  7. ?>
  8. <html>
  9. <head>
  10. <title>Simple BugTracker v.0.3 BUG LIST PAGE</title>
  11. <meta http-equiv="content-type" content="text/html; charset=utf-8">
  12. <link rel="stylesheet" href="style.css" type="text/css" />
  13. </head>
  14. <body>
  15. <form action="login.php" method="post">
  16. Login: <input type="text" name="login">
  17. Hasło: <input type="password" name="password">
  18. <input type="submit" name="log_in" value="LOG IN">
  19. </form>
  20. <?php
  21. require "login_chk.php";
  22. echo $login_chk;
  23. ?>


problem mam troche ze zrozumieniem działania mechanizmu sesji. dlatego też ten wątek. Czy metoda którą próbuje wdrożyć - czyli generowanie unikalnego ID i zapisywanie jego wartości do zmiennej a następnie sprawdzanie na każdej innej podstronie serwisu czy zmienna sesji jest taka sama jak wygenerowana i od teog uzależnić wyświetlanie odpowiedniej zawartości strony?

Czy raczej oprzeć się na unikalnym ID usera i sprawdzać tak samo czy ID występuje w bazie?

Być może ja źle rozumuje i zupełnie nie tak powinno się do tego podchodzić, więc będe wdzięczny za wszelkie informacje na ten temat, wyjaśnienia i wskazówki.
PanGuzol
Do sprawdzenia czy zalogowany wystarczy Ci
  1. $_SESSION['logged'] = true //zalogowany
  2. $_SESSION['logged'] = false //wylogowany

Domyślnie było by false, po poprawnym logowaniu zmieniasz na true a po wylogowaniu znów na false.
Grzes1337
ok rozumiem. ale czy mój to k myślenia w w/w poście jest odpowiedni?
PanGuzol
  1. $_SESSION['sess_id'] = md5(uniqid(''));

Co wejście generujesz nowe id, więc raczej nie.
Grzes1337
ale generuje to ID tylko raz - przy logowaniu. po zalogowaniu do "serwisu" strona logowania jest nie dostępna, wiec teoretycznie nie generuje kolejnego ID, jeżeli dobrze rozumie mechanizm sesji
PanGuzol
Ja tam żadnego if-a nie widzę, więc co wejdziesz na tę stronę, zalogowany lub nie, wygeneruje Ci nowe id.
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.