![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 22.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
tworzę sobie swój własny system logowania i wylogowywania użytkowników. Mam pewien problem - gdy dany użytkownik wpisze swoje dane i kliknie 'zaloguj' i dajmy na to wykona się:
Po czym strona się przeładuje i jak sobie dam np. var_dump($_SESSION) na samym początku strony to stan ten zmiennej jest null, a dalej gdzieś w kodzie jest tak jak powinno być. Jak powinienem sprawdzać stan sesji, czy też jak powinienem wywoływać funkcje by wszystko było ok? EDIT: Jak się wylogowuje to jest analogicznie - zmiany z session_destroy nie są widoczne np. na początku strony Ten post edytował mr_aaa 4.04.2011, 20:31:04 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 69 Dołączył: 23.10.2004 Skąd: Oświęcim Ostrzeżenie: (0%) ![]() ![]() |
Masz na początku każdego pliku rozpoczętą sesję?
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 22.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
tak,
generalnie robię to na jednym pliku i jak sobie czytam, to widzę że generalnie stosowana jest zasada, że logowanie ma swój plik, wylogowywanie swój. Ja to robiłem wszystko tylko na index.php, gdzie logowanie czy wylogowywanie było zmienną w $_GET. Czy to się generalnie stosuje? Być może bardziej logiczne jest stosowanie osobnych plików? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 69 Dołączył: 23.10.2004 Skąd: Oświęcim Ostrzeżenie: (0%) ![]() ![]() |
Może pokaż lepiej kod?
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 22.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
funkcja sprawdzająca czy wyświetlać przycisk zaloguj czy wyloguj (tu właśnie problem, że źle się pokazują-np zaraz po wylogowaniu jest nadal przycisk do wylogowania):
kod logowania:
Na początku index.php oczywiście session_start(); funkcja wylogowania:
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 69 Dołączył: 23.10.2004 Skąd: Oświęcim Ostrzeżenie: (0%) ![]() ![]() |
Nie pokazałeś zbyt dużo... Mówiąc prawdę, to najważniejsze usunąłeś.
Prawdopodobnie błąd jest taki, że w złym miejscu wylogowujesz ;-) -------------------- |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 22.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Pewnie masz rację. Jednak jak to zrobić by było dobrze? Mam klasę User gdzie mam funkcję do wylogowania i jak tą funkcję wywołać na początku strony po kliknięciu przycisku wyloguj?
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 69 Dołączył: 23.10.2004 Skąd: Oświęcim Ostrzeżenie: (0%) ![]() ![]() |
Tak samo jak dalej, tylko że na początku.
Jak już Ci wcześniej powiedziałem: podaj kod. Tak, to sobię możemy tylko gdybać co, gdzie i jak... -------------------- |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 22.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
tylko którą część kodu? bo nie wiem co tu może być jeszcze bardziej istotne?
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 69 Dołączył: 23.10.2004 Skąd: Oświęcim Ostrzeżenie: (0%) ![]() ![]() |
Miejsca, w których działasz na sesjach ;-)
Ewentualnie cały plik. -------------------- |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 22.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Tworzę sesje przy logowaniu:
Usuwam przy wylogowaniu:
W index.php jest session_start(); I tyle. Ale skoro chciałbyś więcej kodu, to domyślam się, że gdzieś czegoś nie robię? |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 455 Pomógł: 69 Dołączył: 23.10.2004 Skąd: Oświęcim Ostrzeżenie: (0%) ![]() ![]() |
To wszystko co mi podajesz, to tylko metody. Pokaż jak tego wszystkiego używasz...
-------------------- |
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Klasa pisana jest chyba po przeczytaniu "Obiektowy PHP4", tak to wygląda, choćby ze względu na brak modyfikatorów dostępu.
Czepię się również bazy i skryptu, dokładniej:
Znasz taki typ danych jak DATETIME ?! Jeżeli tak bardzo chcesz korzystać z dobrodziejstw PDO to rób to wszędzie, bo póki co raz bindujesz parametry a raz wrzucasz do stringa w najgorszy z możliwych sposobów. -------------------- Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 13:09 |