w jaki sposób użyć ciasteczek do sprawdzenia czy z forum korzysta osoba uprawniona, tzn. mam forum przed wejściem do którego trzeba wpisać hasło. Wyświetla się formularz hasła i aby pojawił się index.php trzeba wpisać poprawne hasło znane wyłacznie pracownikom. Skrypt działa ale jak się domyslacie pojawia się irytujące ponowne wpisywanie hasła przy każdym kliknięciu w index, strone główną forum itp.
Chciałem więc wprowadzić ciastko które przetrzymywałoby przez określony czas że aktualny użytkownik wpisał już hasło. Wstawiłem więc odpowiednią funkcję i owszem zadziałało, ciastko było przez 10 minut a po tym czasie wyskakiwał ponownie formularz z prośbą o hasło (gdyby np ktoś zostawił komputer to osoba postronna po 10 minutach musiałaby wpisać hasło). Do dziś myslałem że to działa ale jeden z pracowników donióśł mi że ponownie hasła wpisywać nie musi, wystarczy że klika w przycisk zaloguj i forum się pojawia.
Prawdopodobnie skrypt z hasła sprawdza czy istnieje ciasteczko, mimo że się przeterminowało to wpuszcza na forum, jak to poprawić albo znacie jakiś sposób jak automatycznie co zadany okres czasowy przenosić do wpisywania hasła. Dzieki.
Wklejam skrypcik odpowiedzialny za hasło:
if ($pass != $Password) { showForm("Wrong password"); } } else { showForm(); }
Formularz wpisania hasła wywołuję przez:
} else { require_once('jobhaslo.php'); }
Ciastko job tworzyłem po wpisaniu hasła:
} else { showForm(); }
Sposób ten jednakże nie działa i wystarczy jak wspomniałem kliknąć przycisk login bez wpisywania hasła, prawdopodobnie źle tworzę cookies.
W dokumentacji czytam że
Ciasteczko musi być wysłane zanim jakiekolwiek inne nagłówki zostaną wysłane.
Czyli trzeba je ustawić przed HEAD? Więc jak mam je uzależnić od wpisania hasła? Być może trzeba je stworzyć a później nadać wartość a przed formularzem hasła sprawdzić nie to czy istnieje ale jaką ma wartość, napiszcie jak Wy byście to zaprogramowali.