![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 910 Pomógł: 44 Dołączył: 20.02.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
Witam. Mam opere i z niej korzystam. Gdy klikam wyloguj na stronie, sesja jest niszczona ale nie odświeża strony a powinno. W czym jest problem??
|
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Kod Witam. Mam opere i z niej korzystam. Witam. Mam alkohol i jestem alkoholikiem ![]() Nie odświeża czy przenośi odrazu na adresz z referera? Daj die('test'). po headerze. -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 910 Pomógł: 44 Dołączył: 20.02.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
hehe
dałem die('test'); i gdy klikne pojawia mi się biała strona z "test" ![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Tzn ze nie ma http_referrer.
Sprawdz zawartosc tej zmiennej Kod print_r($_SERVER);
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 910 Pomógł: 44 Dołączył: 20.02.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
Słuszna racja, nie ma http_referer, ale przecież powinna być bo strona jest normalnie wczytywana. Czy ktoś ma jakiś inny pomysł jak to rozwiązać. Myślałem nad header("Location: index.php"); ale raczej chciałbym aby kogoś przenosiło na tą strone z której się wylogował.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 419 Pomógł: 42 Dołączył: 12.08.2008 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Pracujesz na bazie mysql ? Jeśli tak to dodatkowe pole dla usera: last_page czy tam last_url
Wtedy po wylogowaniu header z last_page. EOF |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 25 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
if(jest_http_referer) przenieś_na_tą_strone_z_ktorej_sie_wylogowal
else przenies_na_index Ewentualnie zapisuj do sesji gdzie aktualnie się znajduje i przy $_GET['action'] == 'logout' po prostu tego nie zmieniaj, tylko użyj (pamiętaj, aby skopiować do jakiejś zmiennej przed zniszczeniem sesji) Ten post edytował paziek 15.08.2008, 11:00:59 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Pracujesz na bazie mysql ? Jeśli tak to dodatkowe pole dla usera: last_page czy tam last_url Wtedy po wylogowaniu header z last_page. EOF i po co obciążać dodatkowo bazę? Cytat if(jest_http_referer) przenieś_na_tą_strone_z_ktorej_sie_wylogowal else przenies_na_index Przecież autor mówi, że tego referera nie ma w $_SERVER['HTTP_REFERER']; Co robić? Ja proponuję utworzenie: $_SESSION['current_page']; - zmienna przechowująca adres aktualnie wyświetlanej strony $_SESSION['last_page']; - zmienna przechowująca statnio wyświetlonej strony -> tam będzie przekierowanie -------------------- ET LINGUA EIUS LOQUETUR IUDICIUM
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 910 Pomógł: 44 Dołączył: 20.02.2008 Skąd: Łódź Ostrzeżenie: (20%) ![]() ![]() |
zrobiłem przekierowanie na index.php i już
![]() |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 25 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Przecież autor mówi, że tego referera nie ma w $_SERVER['HTTP_REFERER']; Jeśli ktoś wyłączy wysyłanie to go nie ma. Nie ma jednak sensu karać z tego powodu wszystkich, stąd też instrukcja if elseCo do $_SESSION['current_page']; - zmienna przechowująca adres aktualnie wyświetlanej strony Po co aż dwie zmienne? Do tego jeszcze sesje są zapisywane na dysku, więc masz zajęty ram i więcej I/O na dysku - wystarczy jedna $_SESSION['last_page']; - zmienna przechowująca statnio wyświetlonej strony -> tam będzie przekierowanie ![]() Ten post edytował paziek 15.08.2008, 13:49:58 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.07.2025 - 16:42 |