![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 1 Dołączył: 18.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mój problem wygląda następująco: Piszę aplikacje w której zastosowałem autoryzacje użytkowników opartą na mysql. W sęsie takim, że wchodzi osoba na strone, loguje się i w przypadku poprawnego zalogowania sesja umieszczana jest w bazie. Problem pojawia się, gdy taka osoba się wylogowuje. Po naciśnięciu wyloguj z bazy usuwana jest sesja danego użytkownika, oraz ciasteczko z jego przeglądarki. Po wylogowaniu przsenosi do strony logowania i tam po naciśnięciu wstecz (w menu przeglądarki) wraca do poprzednio zalogowanej strony z możliwością kliknięcia w coś jednorazowo(przenosi z powrotem do strony logowania). W skrypcie mam takie zabezpieczenie,ze jeżeli nie ma takiej sesji przenosi do strony logowania. Dodam, że po checi ponownego wykonania tego pliku(wywolaniem url) przenosi prawidłowo do strony logowania. Czy wie ktoś jak można rozwiązać mój problem? Wersja php: 5.0, używam systemu szablonów OPEN POWER TEMPLATE. Przepraszam za mój język, oraz błędy. Z góry dziękuję za pomoc! |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 19.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Ale na czym polega dokładnie Twój problem? Przyznam, że przeczytałem 3 razy temat i nie wiem w przypadku czego prosisz o pomoc.
Chodzi o to, że po wylogowaniu user po kliknięciu wstecz ciągle ma dostęp do treści, które powinny być dostępne tylko po zalogowaniu? |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 1 Dołączył: 18.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Tak, przepraszam za zamieszanie. Nie wiedziałem jak sprawnie to opisać.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%) ![]() ![]() |
Spróbuj dodać te liniki do swojego skryptu pomiędzy <head> a </head>:
Cytat <meta http-equiv="Expires" content="0"> <meta http-equiv="Cache-Control" content="no-store, no-cache, must-revalidate"> <meta http-equiv="Cache-Control" content="post-check=0, pre-check=0"> <meta http-equiv="Pragma" content="no-cache"> Wyczyść cache swojej przeglądarki i zobacz jak działa. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 1 Dołączył: 18.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Wolałbym uniknąć tego sposobu. Aplikacja trochę informacji ładuje do cache i strasznie spowolniło by to jej działanie. Chciałbym prosty, szybki i wydajny sposób.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 80 Pomógł: 1 Dołączył: 22.01.2011 Ostrzeżenie: (0%) ![]() ![]() |
Dodałeś na samym początku sprawdzenie aktywności sesji?
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 1 Dołączył: 18.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Tak. Wygląda to mniej więcej tak:
Ten post edytował szym011 27.11.2011, 23:27:31 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%) ![]() ![]() |
Nie wiem ,ale mam takie przeczucie ,że z tym raczej nic nie zrobisz jak masz cache włączone.Wydaje mi się ,że jedynym wyjściem jest właśnie wyłączenie cachowania na stronie.
Ten post edytował Niktoś 27.11.2011, 23:30:38 |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 19 Pomógł: 1 Dołączył: 18.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Spróbowałem jednak zastosować wyłączenie cache no i niestety brak efektu. Nadal po wylogowaniu mogę wrócić do poprzedniej strony.
Jakieś inne pomysły? |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 376 Pomógł: 47 Dołączył: 23.08.2007 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
A moze po prostu header('Location: /adres strony'); exit; (IMG:style_emoticons/default/questionmark.gif) Oczywiscie zaraz po wylogowaniu ze strony.
Ten post edytował Kostek.88 6.12.2011, 21:41:31 |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 673 Pomógł: 106 Dołączył: 31.12.2008 Ostrzeżenie: (0%) ![]() ![]() |
sądzę iż jest to pewnego rodzaju walka z wiatrakami i wypadałoby najpierw zastanowić się nad sensem takiego rozwiązania. wady niestety widać gołym okiem (brak cache chociażby). drugi aspekt - jest to pewnego rodzaju próba 'zablokowania' przycisku 'wstecz' - a po coś on ino został stworzony (ale to już czysto subiektywne zdanie) (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 590 Pomógł: 107 Dołączył: 25.10.2011 Ostrzeżenie: (0%) ![]() ![]() |
OK, jestem w stanie zrozumieć Twoją chęć tego, by przez przycisk 'back' nie dostać informacji, do których potrzeba się zalogować. Ale... w takim razie co zrobisz, jeśli ktoś otworzy sobie kilka zakładek czy nawet okien z treścią z serwisu (i informacjami tylko dla zalogowanych), a w jednym z nich się wyloguje? A co zrobisz, jak sobie taką stronę zapisze na dysk?
Sorry, ale ja nie widzę sensownego rozwiązania. Nie ma możliwości kontrolowania tego, co już zostało wysłane do przeglądarki... |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
IMO jak masz sprawdzanie w dalszej części strony czy użytkownik jest zalogowany, to nawet jeżeli może kliknać, to i tak go przekieruje na stronę logowania. Wniosek - dla ciebie to żaden problem.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 16:12 |