Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > получение ip адресса


Автор: lelik133 3.4.2003, 18:08
Промогите, пожалуйста, как получиить ip-адресс машщины с которой был зделан запрос к скрипту?
Попробовал $ip=$REMOTE_ADDR не работает? В чем моя ошибкаconfused.gif?

Автор: Guest_BlackWolf 3.4.2003, 21:11
Код

<?php
echo $HTTP_SERVER_VARS["REMOTE_ADDR"];
echo "<BR>";
        // или же если версия PHP >= 4.1.0
echo $_SERVER["REMOTE_ADDR"];
?>


Ну совсем немножко ошибся smile.gif Если бы был register_globals = On то все бы у тебя работало а так вот такой вариант будет работать. Если будешь использовать в какой-то функции то предварительно сделай объявление

Код

       global $HTTP_SERVER_VARS;
       // или же если версия PHP >= 4.1.0
       global $_SERVER



Автор: Mark.dll 3.4.2003, 22:06
Код

if(getenv("HTTP_CLIENT_IP")) {
$ip = getenv("HTTP_CLIENT_IP");
} elseif(getenv("HTTP_X_FORWARDED_FOR")) {
$ip = getenv("HTTP_X_FORWARDED_FOR");
} else {
$ip = getenv("REMOTE_ADDR");
}

Автор: Foxx 4.4.2003, 03:51
HTTP_CLIENT_IP а это что еще за штука ? В первый раз вижу smile.gif

Автор: Mark.dll 4.4.2003, 08:17
ip определяет
короче... всё в функции getenv написано в мануале и пример тоже оттуда

Автор: Foxx 4.4.2003, 08:25
ну это понятно что IP адрес smile.gif
Я мне интересно что это за адрес. Вот Форвардед например отдает ай-пи перед прокси. А этот с чем есться?

Автор: Mark.dll 4.4.2003, 16:01
если логически рассуждать по коду, который я написал выше, то в HTTP_CLIENT_IP больше вероятности или 100% вероятности, что ip настоящий

Автор: Foxx 5.4.2003, 04:21
согласен smile.gif
Если конечно только прокся его отдаст sad.gif

Автор: Mark.dll 5.4.2003, 12:05
Цитата(Foxx @ 4.4.2003, 20:21)
согласен smile.gif
Если конечно только прокся его отдаст sad.gif

не отдаст

Автор: Foxx 7.4.2003, 09:02
а это смотря как она будет настроена smile.gif

Автор: Vco 10.4.2003, 22:08
Первый способ:
Код

$ip=getenv('REMOTE_ADDR');

Второй :
Код

$ip=getenv('HTTP_X_FORWARDED_FOR');

Второй нужен когда не работает первый smile.gif Например на хостинге h1/h10 переменная REMOTE_ADDR содержит неправильное значение
Вроде всё правильно... ты забыл getenv указать

Автор: Vco 10.4.2003, 22:09
Я всегда так делал...а про HTTP_CLIENT_IP не слышал ...

Автор: Mark.dll 12.4.2003, 18:21
Цитата(Vco @ 10.4.2003, 22:09)
Я всегда так делал...а про HTTP_CLIENT_IP не слышал ...

Читай manual - ещё многое "услышишь".

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)