У меня есть диапазон IP адресов от 10.0.1.1 до 10.0.255.255 . Как правильно прописать условие чтоб если у пользователя IP из этого диапазона его переадресовывало на одну страницу а если нет то на другую ?
Спустя 22 минуты, 19 секунд (27.11.2010 - 03:04) kirik написал(а):
Через ip2long();
Спустя 21 час, 12 минут, 15 секунд (28.11.2010 - 00:16) made_in_Chuguev написал(а):
Спасибо большое оказалось это давольно таки просто
Спустя 1 год, 5 месяцев, 8 часов, 3 минуты, 37 секунд (28.04.2012 - 07:20) Stas написал(а):
А вот скрипт который сохраняет ip одного диапазона в txt файл
тоесть у нас три компа в разных точках города и соответствено совсем разные ip требуется провести статистику смены ip трех разных деапозонов и в конце месяца просмотреть статистику
я использую такой
но он заменяет а не дописывает как сделать чтоб дописывал
только наш диапозон
все с записью разобрался
у меня
а надо
вот как с деапозоном быть
тоесть у нас три компа в разных точках города и соответствено совсем разные ip требуется провести статистику смены ip трех разных деапозонов и в конце месяца просмотреть статистику
я использую такой
<?php echo $_SERVER['REMOTE_ADDR']; ?>
<br>
<?php echo (date("d.m.Y H:i:s"));?>
<br>
<?php
$fp = fopen('ip_base.txt','w+');
fwrite($fp, $_SERVER['REMOTE_ADDR']."\r\n");
fwrite($fp, $_SERVER["HTTP_REFERER"]."\r\n");
fwrite($fp, date("d.m.Y H:i:s")."\r\n" );
fclose($fp);
?>
но он заменяет а не дописывает как сделать чтоб дописывал
только наш диапозон
все с записью разобрался
у меня
$fp = fopen('ip_base.txt','w+');
а надо
$fp = fopen('ip_base.txt','а');
вот как с деапозоном быть
Спустя 2 часа, 14 минут, 2 секунды (28.04.2012 - 09:34) Nikitian написал(а):
if(ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('123.0.0.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('123.0.0.255')){
.....
}
Спустя 30 минут, 20 секунд (28.04.2012 - 10:04) Stas написал(а):
тоесть
правельно я понял?
если да то неработает
<?
if(ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('123.0.0.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('123.0.0.255'))
{
$fp = fopen('ip_base.txt','a');
fwrite($fp, $_SERVER['REMOTE_ADDR']."\r\n");
fwrite($fp, $_SERVER["HTTP_REFERER"]."\r\n");
fwrite($fp, date("d.m.Y H:i:s")."\r\n" );
fclose($fp);
}
?>
правельно я понял?
если да то неработает
Спустя 13 минут, 19 секунд (28.04.2012 - 10:17) Nikitian написал(а):
Так, а диапазон допустимых ip указали тот, который вам нужен или который использовался в примере?
Спустя 1 минута, 49 секунд (28.04.2012 - 10:19) Stas написал(а):
да как в примере я на denver тестирую он даже файл не создает
Спустя 1 минута, 25 секунд (28.04.2012 - 10:21) Nikitian написал(а):
А ничего, что денвер работает в локальной сети с подмаской 127.255.255.255 и адресом 127.0.0.1?
123.0.0.1 был взят чист дя примера.
123.0.0.1 был взят чист дя примера.
Спустя 5 минут, 21 секунда (28.04.2012 - 10:26) Stas написал(а):
все понял поменял ip работает
вопрос такой
вопрос такой
<?такой скрипт под каждый ип делать
if(ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('123.0.0.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('123.0.0.255'))
{
$fp = fopen('ip_base.txt','a');
fwrite($fp, $_SERVER['REMOTE_ADDR']."\r\n");
fwrite($fp, $_SERVER["HTTP_REFERER"]."\r\n");
fwrite($fp, date("d.m.Y H:i:s")."\r\n" );
fclose($fp);
}
?>
Спустя 6 минут, 56 секунд (28.04.2012 - 10:33) Nikitian написал(а):
Смотря какие диапазоны ip нужны.
Спустя 14 минут, 55 секунд (28.04.2012 - 10:48) Stas написал(а):
ну вот пример
84.200.220.225
89.115.256.212
2.165.55.259
84.200.220.225
89.115.256.212
2.165.55.259
Спустя 15 минут, 4 секунды (28.04.2012 - 11:03) Nikitian написал(а):
<?
if(
ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('84.200.220.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('84.200.220.255') &&
ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('89.115.256.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('89.115.256.255')&&
ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('2.165.55.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('2.165.55.255')
)
{
$fp = fopen('ip_base.txt','a');
fwrite($fp, $_SERVER['REMOTE_ADDR']."\r\n");
fwrite($fp, $_SERVER["HTTP_REFERER"]."\r\n");
fwrite($fp, date("d.m.Y H:i:s")."\r\n" );
fclose($fp);
}
?>
как-то так
Спустя 14 минут, 42 секунды (28.04.2012 - 11:17) Stas написал(а):
но делаю я так
правельно?
ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('84.0.0.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('84.0.0.255') &&
ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('89.0.0.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('89.0.0.255')&&
ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('2.0.0.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('2.0.0.255'))
правельно?
Спустя 2 минуты, 13 секунд (28.04.2012 - 11:20) Nikitian написал(а):
Нет, неправильно. Нули во втором и третьем октете не надо ставить )
Спустя 13 минут, 51 секунда (28.04.2012 - 11:34) Stas написал(а):
тоесть вписываю эти ip
84.200.220.225
89.115.256.212
2.165.55.259
но в этом случаи мняются
84.200.xxx.xxx
89.115.256.xxx
2.165.xx.xx
я ставлю
неработает
84.200.220.225
89.115.256.212
2.165.55.259
но в этом случаи мняются
84.200.xxx.xxx
89.115.256.xxx
2.165.xx.xx
я ставлю
ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('84.200.1.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('84.200.225.255') &&
ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('89.115.1.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('89.115.225.255')&&
ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('2.165.1.1') && ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('2.165.225.255'))
неработает
Спустя 1 час, 7 минут, 17 секунд (28.04.2012 - 12:41) Stas написал(а):
решил так
и таким способом для всех пользователей
а вот еще вопрос можноли такое с htaccess делать
<?php
if
(
ip2long($_SERVER['REMOTE_ADDR'])>=ip2long('127.0.0.1')
&&
ip2long($_SERVER['REMOTE_ADDR'])<=ip2long('127.0.0.255')
)
{
$fp = fopen('stat_ip\пользователь.txt','a');
fwrite($fp, $_SERVER['REMOTE_ADDR']."\r\n");
fwrite($fp, $_SERVER["HTTP_REFERER"]."\r\n");
fwrite($fp, date("d.m.Y H:i:s")."\r\n" );
fclose($fp);
}
?>
и таким способом для всех пользователей
а вот еще вопрос можноли такое с htaccess делать