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:
- Dodajemy do naszego formularza ukryte pole z adresem poprzedniej strony:
- 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: