Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wyzerowanie historii przeglądania strony
kryspinus
post
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.04.2008

Ostrzeżenie: (0%)
-----


Witam, mam taki problem:
Mam na stronie zalogowany.php przycisk formularza, po naciśnięciu go przeładowywana jest strona i sprawdzany jest warunek, jeśli warunek jest spełniony to funkcją header w PHP przechodzę na stronę test.php. I teraz mam pytanie, czy da się tak zrobić, żeby po wejściu na stronę test.php przycisk wstecz w przeglądarce nie wskazywał poprzedniej strony (strony zalogowany.php) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Nie chciałbym używać blokowania przycisku wstecz, bo to da się obejść, tylko jakoś wyzerować historię przeglądania strony. Z tego co się orientuję, to jeśli jest taka możliwość to zapewne za pomocą javascriptu, dlatego umieszczam moje zapytanie w tym forum.
Z góry dzięki za odpowiedzi
Go to the top of the page
+Quote Post
pawkow
post
Post #2





Grupa: Zarejestrowani
Postów: 76
Pomógł: 7
Dołączył: 30.09.2006

Ostrzeżenie: (0%)
-----


hmmm nie da sie w JS manipulować historią, a nawet jeśli w co wątpię, to absolutnie nie jest to wskazane, powiedz co chcesz osiągnąć a wymyślimy rozsądniejsze rozwiązanie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
kryspinus
post
Post #3





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.04.2008

Ostrzeżenie: (0%)
-----


Chciałbym osiągnąć to, żeby po wejściu na stronę test.php nie dało się już z niej wejść spowrotem na stronę zalogowany.php inaczej jak tylko poprzez zakończenie testu odpowiednim przyciskiem. A myślę, że może skoro da się poprzez javascript wejść na poprzednią stronę (funkcją history(-1)) to może da się jakoś podmienić tą historię na adres innej strony (np. test.php)

Ten post edytował kryspinus 4.05.2009, 16:24:50
Go to the top of the page
+Quote Post
pawkow
post
Post #4





Grupa: Zarejestrowani
Postów: 76
Pomógł: 7
Dołączył: 30.09.2006

Ostrzeżenie: (0%)
-----


trzymaj w sesji dane od których uzależniasz to czy na stronę można wejść czy nie - jeśli tak to ok, jeśli nie rób redirect (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Sprawa prosta, i to nie musi być sesja.
Go to the top of the page
+Quote Post
kryspinus
post
Post #5





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.04.2008

Ostrzeżenie: (0%)
-----


No ok, ale to jednak nie rozwiązuje mojego problemu, bo jeśli ktoś wciśnie wstecz to i tak i tak wejdzie na stronę wcześniejszą bo przeglądarka nie sprawdza wtedy żadnych danych jeśli się nie mylę.
Go to the top of the page
+Quote Post
pawkow
post
Post #6





Grupa: Zarejestrowani
Postów: 76
Pomógł: 7
Dołączył: 30.09.2006

Ostrzeżenie: (0%)
-----


ale PHP może sprawdzić.
Go to the top of the page
+Quote Post
kryspinus
post
Post #7





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.04.2008

Ostrzeżenie: (0%)
-----


Cytat(pawkow @ 4.05.2009, 17:47:52 ) *
trzymaj w sesji dane od których uzależniasz to czy na stronę można wejść czy nie - jeśli tak to ok, jeśli nie rób redirect (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Sprawa prosta, i to nie musi być sesja.


Sprawdzałem to dzisiaj i rzeczywiście działa, czyli jak dam wstecz to sprawdzany jest warunek i jeśli nie jest spełniony to znowu jest powrót na stronę, z której chcę wyjść. Jednak jak dam kilka razy wstecz to mnie całkiem wylogowuje, czyli nie do końca jest to rozwiązaniem mojego problemu. Najlepiej by było jakby strony na które wchodzę nie dodawały się do historii. Tak, żeby przycisk wstecz był pusty. Nie wiem tylko czy da się coś takiego zrobić.

Ten post edytował kryspinus 8.05.2009, 15:23:48
Go to the top of the page
+Quote Post
kamil4u
post
Post #8





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


Poczytaj o nagłówkach w PHP i ustaw je tak, żeby kazały przeglądarce nie zapisywać cache (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
kryspinus
post
Post #9





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.04.2008

Ostrzeżenie: (0%)
-----


Cytat(kamil4u @ 8.05.2009, 16:44:21 ) *
Poczytaj o nagłówkach w PHP i ustaw je tak, żeby kazały przeglądarce nie zapisywać cache (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)


W manualu znalazłem coś takiego: (Jednak nadal to nic nie daje, nadal można powrócić do strony poprzedniej)


Skrypty PHP często służą do generowania dynamiczej treści, która nie może być buforowana przez klienta czy serwer proxy. Pamięć cache (bufor) w większości tych urządzeń da się wyłączyć dzięki:



CODE
header ("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // data w przeszłości
header ("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
// ciągle modyfikowany
header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache"); // HTTP/1.0
?>


Notatka: Możesz zaobserwować, że strony nie są buforowane, nawet jeśli nie użyłeś wszystkich ww. nagłówków. Jest wiele sposobów, w jakie użytkownicy mogą skonfigurować swoje przeglądarki, aby zmienić standardowy sposób buforowania. Przez wysłanie powyższych nagłówków, powinno się udać ominąć wszystkie ustawienia pozwalające na zbuforowanie wyniku pracy twojego skryptu.

Go to the top of the page
+Quote Post
kufalo
post
Post #10





Grupa: Zarejestrowani
Postów: 251
Pomógł: 2
Dołączył: 24.08.2005

Ostrzeżenie: (0%)
-----


location.replace('test.php') - jezeli tak wejdziesz na podstrone test.php zastapi ona w historii przegladania poprzednia podstrone

Ten post edytował kufalo 8.05.2009, 16:01:24
Go to the top of the page
+Quote Post
kryspinus
post
Post #11





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 1.04.2008

Ostrzeżenie: (0%)
-----


Cytat(kufalo @ 8.05.2009, 17:01:11 ) *
location.replace('test.php') - jezeli tak wejdziesz na podstrone test.php zastapi ona w historii przegladania poprzednia podstrone


Rzeczywiście działa, dzięki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) A mam jeszcze pytanie, jest możliwe, żeby od razu zastąpiło mi całą poprzednią historię?? Bo rozumiem, że to zastępuje tylko w historii tą stronę z której przyszedłem, a poprzednie??
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 02:01