Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] REMOTE_ADDR podaje adres strony a nie klienta
Forum PHP.pl > Forum > Przedszkole
skalcik
Witam,

Uzywam REMOTE_ADDR do uzyskania adresu IP uzytkownika.
Dodaje do bazy danych kazde przejscie z podstrony na podstrone.
O ile przy pierwszym wejsciu na strone adres IP jest podawany prawidlowo, tak przy kolejnym podaje adres IP strony/serwera.

Na poczatku funkcja dzialala prawidlowo po jakims czasie przestala, w miedzy czasie bawilem sie kodem strony ale nie tym zwiazanym z robieniem logow.
Moj kod wyglada tak:

  1. if($_SESSION['uzytkownik']){
  2. $luse = $_SESSION['uzytkownik'];
  3. } else {
  4. $luse = 'gosc';
  5. }
  6. $datpka=date("Y-m-d H:i:s");
  7. $skand = $_SERVER['HTTP_REFERER'];
  8. $aip = $_SERVER['REMOTE_ADDR'];
  9. $strona = $_SERVER['REQUEST_URI'];
  10. mysql_query('INSERT INTO `sledz` VALUES ("NULL", "'.$aip.'", "'.$datpka.'", "'.$strona.'", "'.$skand.'", "'.$luse.'") ');


Prosze o pomoc w rozwiazaniu problemu jak sprawic aby adres IP klienta byl zapisywany prawidlowo do logow.
Damonsson
REMOTE_ADDR zwraca Ci ip z którego był request, poprzez jakieś dziwne ustawienia, może Ci czasem zwrócić ip serwera.

Spróbuj tak:
  1. $ip = $_SERVER['REMOTE_ADDR'];
  2. if (array_key_exists('HTTP_X_FORWARDED_FOR', $_SERVER)) {
  3. $ip = array_pop(explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']));
  4. }



edit: tu masz jeszcze artykuł po Polsku dotyczący pobierania ip: http://www.capaciouscore.pl/artykuly/jak-o...ajacego-strone/
skalcik
Dziekuje za odzew i pomoc, niestety nie dziala to u mnie. Wczesniej probowalem tej metody w troche innym zapisie i nie daje opisanego efektu.
Tymczasowo obszedlem to zapisujac w cookies adres ip ktory wylapuje prawidlowo podczas pierwszego wejscia, nastepnie jesli uzytkownik zdecyduje sie na rejestracje w serwisie pobieram IP z cookies, nie jest to najlepsze rozwiazanie ale do czasu znalezienia lepszego sie sprawdza.
Zaraz zapoznam sie z artykulem.
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.