Używam, $_SERVER['HTTP_REFERER'];
aby uzyskać adres URL strony referencyjnej. Działa zgodnie z oczekiwaniami, dopóki użytkownik nie kliknie innej strony, a osoba odsyłająca nie przejdzie do ostatniej strony.
Jak zapisać oryginalny odsyłający adres URL?
php
http-referer
Keith Donegan
źródło
źródło
http_referer
istnieje, ponieważ często tak nie jest, co może spowodować błąd „Niezdefiniowany indeks”.Jak zasugerował Johnathan, chciałbyś zapisać go w pliku cookie lub sesji.
Najłatwiejszym sposobem byłoby użycie zmiennej sesji.
Umieść to na górze strony, a zawsze będziesz mieć dostęp do pierwszego referer, przez który skierował odwiedzający witrynę.
źródło
Przechowuj go w pliku cookie, który trwa tylko podczas bieżącej sesji przeglądania
źródło
Używanie Cookie jako repozytorium strony referencyjnej jest w większości przypadków znacznie lepsze, ponieważ pliki cookie będą przechowywać stronę odsyłającą do zamknięcia przeglądarki (i zachowają ją nawet, jeśli karta przeglądarki jest zamknięta), więc w przypadku, gdy użytkownik zostawił stronę otwartą, powiedzmy przed weekendami i wrócisz do niego po kilku dniach, Twoja sesja prawdopodobnie wygaśnie, ale pliki cookie nadal tam będą.
Umieść ten kod na początku strony (przed jakimkolwiek wyjściem html, ponieważ pliki cookie będą poprawnie ustawione tylko przed jakimkolwiek echem / printem):
Następnie możesz uzyskać do niego dostęp później:
Oprócz tego, co @pcp zasugerował na temat ucieczki $ _SERVER ['HTTP_REFERER'], podczas korzystania z plików cookie możesz również chcieć uciec $ _COOKIE ['origin_ref'] przy każdym żądaniu.
źródło
Spróbuj tego
źródło
IP ADDRESS
ale post dotyczyREFERER
strony internetowej, która doprowadziła do tej, o której mowa.