[PHP/JS] Powrót do poprzedniej strony

Postaram się przedstawić kilka różnych możliwości powrotu do poprzedniej strony, formularza, do konkretnej strony itp.. Rozważymy kilka możliwych scenariuszy:).

Thank you for reading this post, don't forget to subscribe!

Powrót do formularza

Wyobraźmy sobie taką sytuacje: Mamy formularz dodawania nowych treści do strony. Po wypełnieniu i wciśnięciu przycisku “Wyślij” formularz przesyła dane do pliku, który jest odpowiedzialny za zapisanie danych do bazy. My nie chcemy zostać w tym pliku tylko chcemy wrócić z powrotem do strony z naszym formularzem.

Przykładowy kod formularza:

Plik formularz.php \\kod formularza

Czyli po wciśnięciu przycisku “Wyślij” formularz przenosi nas do pliku add-content.php, gdzie realizuje się docelowy kod programu (dodawania treści).
Aby powrócić do strony z formularzem należy użyć funkcji header() i zmiennych serwera a konkretnie HTTP_REFERER

// tu kod wykonawczy programu
// po tym kodzie wpisujemy funkcje header()
header('Location: '.$_SERVER['HTTP_REFERER']);

Powrót na poprzednią stronę

Teraz nasza sytuacja wygląda tak: “chodzimy” po różnych miejscach w naszym serwisie i nagle chcielibyśmy mieć możliwość cofnięcia się na poprzednią stronę. Do tego celu możemy użyć i PHP, i JavaScript.

Przykład z użyciem php:

Cofnij 

Czyli po prostu skorzystaliśmy tak jak w poprzednim przypadku z opcji serwera HTTP_REFERER.

Przykład z użyciem JavaScript:

  • Klikając w dowolny element np: div / img itp…
    Cofnij
  • Przy użyciu linku
    Cofnij

Powrót na stronę z której weszliśmy do formularza logowania

Nieco trudniej. Przykładowo zrobiliśmy jakieś blokady treści na stronie, i aby użytkownik mógł je przeczytać musi się najpierw zalogować na naszą stronę. Zadanie jakie jest przed nami to to, że po poprawnym zalogowaniu użytkownika przenosi z powrotem do strony skąd przeszedł do formularza logowania.

Rozwiązanie przy użyciu PHP:

  1. Dodajemy do naszego formularza ukryte pole z adresem poprzedniej strony:
  2. Następnie w pliku wykonawczym odpowiedzialnym za logowanie w odpowiednim miejscu (gdzie mamy sygnał że użytkownik podał prawidłowe hasło i login) kod:
    header('Location: '.$_POST['link']);
    

I sprawa załatwiona:)

Jakieś inne sugestie, problemy ?? zapraszam do komentowania: