Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PHP źle pobiera IP
Forum PHP.pl > Forum > PHP
Xayan
Witam. Mam takowy problem: IP pobierane przez $_SERVER["REMOTE_ADDR"] pokazuje IP serwera, a nie osoby odwiedzającej stronę, a tak nie powinno być smile.gif Cóż z tym można zrobić?
wookieb
1) X_FORWARDED_FOR
2) A jak to sprawdziłeś?
lukaskolista
nie laczysz sie czasem sam ze soba, dlatego tak pokazuje?
Xayan
Jest to na hostingu zymic.com, więc sam ze sobą się nie łączę. Sprawdzałem to przez echo $_SERVER["REMOTE_ADDR"];, a swoje IP sprawdziłem na whatismyip.com.

@Edit:

Cud się stał, zaprawdę powiadam wam! Zadziałało $_SERVER['X_FORWARDED_FOR']! Dzię-ku-ję smile.gif

@Edit2:

A jednak nie, powyższa zmienna zwraca NULL =/ Pomocy!
CuteOne
  1. public function GetIP() {
  2.  
  3. if (getenv("HTTP_CLIENT_IP")) return getenv("HTTP_CLIENT_IP");
  4. elseif(getenv("HTTP_X_FORWARDED_FOR")) return getenv("HTTP_X_FORWARDED_FOR");
  5. elseif(getenv("REMOTE_ADDR")) return getenv("REMOTE_ADDR");
  6. else return "UNKNOWN";
  7. }
netmare
Mi tam zawsze działało REMOTE_ADDR. Natomiast rozwiązania polegające na poszukiwaniu ip pośród nagłówków dorzucanych przez proxy uważam za bezsensowne, a do tego przy braku jakiejkolwiek weryfikacji zapisanych w nich danych zagrażające bezpieczeństwu. Bo próba zapisania do bazy lub wyświetlenia na stronie wyniku funkcji GetIP() podanej przez CuteOne może mieć tragiczne skutki.
CuteOne
... podałem jak może pobrać IP a zabezpieczenia to już jego kwestia

ps. mi czasem zwraca null z remote_addr dlatego napisałem sobie taką funkcję.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.