![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 12.06.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam...
zdaję sobie sprawę że temat logowania juz wiele wiele razy poruszany był na forum - i z tego też względu ciężko sie doszukać właściwych odpowiedzi. Przeszukałem sporo postów o logowaniu lecz nie znalazłem odpowiedzi na taki problem: tworzę sobie chyba jeden z najprostszych systemów logowania do panelu administracyjnego: użytkownik podaje login i hasło i jeśli dane są poprawne ( sprawdzam je z tymi z bazy danych) to automatycznie tworzone są zmienne sesji:
Następnie w plikach tam gdzie jest to wymagane spawdzam istnienie zmiennych sesji aby dowiedzieć się czy użytkownik jest zalogowany. I wszystko do tej pory jest ok. działa dobrze. Ale zastanawia mnie jedna rzecz z nazwami zmiennych sesji i z jej bezpieczeństwem: wystarczy że napiszę sobie krótki skrypt i przy jego pomocy utworze zmienne sesji kolejno: $_SESSION['login'] = $login; $_SESSION['haslo'] = $haslo; Wówczas bez problemu mogę dostać się na obszar administracyjny wcześniej wspomnianego systemu logowania. Czy widzicie jakies rozwiazanie na to?? A moze ktoś już wcześniej miał na forum taki problem? P.S. Jeszcz jedno. kiedyś na forum napotkałem się z tematem, w którym uzytkownicy podawali jakie ich zdaniem sa najlepsze rozwiąziania na logowanie. Niestety nie mogę teraz czegos podobnego wyszukać. pozdrawiam i prosze o pomoc Ten post edytował adif 11.07.2005, 14:26:42 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 21.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Domyslam sie ze chodzi ci o to, ze mozna sobie utworzyc jakiekolwiek zmienne sesyjne odpowiadajace tym zmiennym i wtedy sie zalogowac? Jesli tak - to np zminne nie musza sie nazywac $_SESSION['login'] i$_SESSION['haslo'] mozesz wywoływac funkcje przypisywania z pliku ktory nie znajduje sie z katalogu ktory jest udostepniany przez Apache np przez require_once(' i siciezka do katalogu, ktory jest wyzej '); // php dziala po stronie serva wiec ma do nich dostep// Poza tym nie sadze ze tak latwo jest uruchomic zewnetrzny skrypt ktory ci podepnie sie pod zmienne. Poza tym mozesz dolozyc kolejna zmienna - jakis parametr ktory jest zasysany z bazy 0-user 1-admin i sprawdzac ten paramet - jesli jest 1 do masz wejscie do panelu jesli cokolwiek innego to nie to takie moje jakies pomysły na rozwianie towoich obaw Pozdrawiam Ten post edytował Cathan 11.07.2005, 20:36:59 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 25 Pomógł: 0 Dołączył: 12.06.2005 Ostrzeżenie: (0%) ![]() ![]() |
dzięki Cathan za odpowiedź...
w tym momencie wyszło że nie do końca doczytałem o sesjach samych w sobie i że jestem już nieźle zmęczony ![]() Pisząc tego posta wydawało mi się przez moment, że zmienne sesji utworzone na lokalnym serwerze będą odpowiadały tym zmiennym utworzonym na zewnątz i mój komputer skojarzy je ze soba i dzięki temu uzyskam dostęp do panelu administarcyjnego. Wystarczyło poczytac więcej o sesjach. Ale na chłopski rozum biorąc sprawę to czy odbywa się to w ten sposob...jeśli źle pisze to proszę o sprostowanie: W momencie logowania po stronie serwera tworzone są zmienne sesji przechowywane np. w tabliy sesji $_SESSION, które kojarzone są z identyfikatorem sesji po stronie klienta. Tzn. jeśli klient jest nie zalogowany to skrypt sprawdza czy istnieją zmienne sesji utworzone specjalnie dla danego identyfikatora ( SID ) i jeśli istnieją wpuszcza go do częsci administracyjnej. Ok...a jeśli chodzi np. o czas zalogowania. Chcę aby klient po dłuższej nieaktywności na stronie np 10min. został automatycznie wylogowany. Czy stosowac do tego np. baze Mysql, w której bedziemy pamiętać czas ostatniego zalogowania i sprawdzac z obecnym czasem? a może zapamiętywać to w zmiennych sesji? Myślałem nad czymś takim (pomysł taki na szybko): za każdym razem jak klient przechodzi na poszczególne podstrony wywoływac fragment kodu:
W jaki sposób sprawdzić tą różnicę? A moze ktoś ma zupełnie inny pomyśł na to. z góry dzięki |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 24 Pomógł: 0 Dołączył: 21.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
Na poczatek proponowal bym php.ini i poczytac o konfiguracji sesji
np. session.cache_expire itd. Mozesz tam ustawic w minutach dlugosc przechowywania sesji, ciastek i wiele inne innych rzeczy Pozdrawiam |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 06:33 |