| |
|
|
| | Есть у меня диапазон ip например 127.0.0.1 - 127.0.0.255
проверяю на соответствие так по трем первым разрядам...
<?
if(ereg("127.0.0.", $_SERVER['REMOTE_ADDR'])) {....}
?>
|
Как Лучше сделать проверку по такому диапазону 127.0.0.1 - 127.0.5.255 ??
Пока что лучшей идеи чем
<?
if(ereg("127.0.0.", $_SERVER['REMOTE_ADDR'])) {....}
if(ereg("127.0.1.", $_SERVER['REMOTE_ADDR'])) {....}
if(ereg("127.0.2.", $_SERVER['REMOTE_ADDR'])) {....}
if(ereg("127.0.3.", $_SERVER['REMOTE_ADDR'])) {....}
if(ereg("127.0.4.", $_SERVER['REMOTE_ADDR'])) {....}
if(ereg("127.0.5.", $_SERVER['REMOTE_ADDR'])) {....}
?>
| в голову непришло за вечер ))
Подскажите кто нибудь какую нить мыслю )) | |
| |
|
|
| |
|
|
| |
для: skor
(09.11.2006 в 22:32)
| | |
<?php
if(preg_match("/127\.0\.(\d+)\.(\d+)/", getenv('REMOTE_ADDR')))
{
...
}
?>
|
P.S. Че, на ваптиме ниче не умеют? ;) | |
| |
|
|
| |
|
|
| |
для: Unkind
(09.11.2006 в 22:35)
| | | ненаю... диапазонов ip туева хуча будет, тут как то в массив или что нить еще )) ))
ЗЫ: на ваптиме все умеют , но нечо незнают )))))))) | |
| |
|
|
| |
|
|
| |
для: skor
(09.11.2006 в 22:43)
| | | А че пишешь? Хочешь базу IP-адресов операторов сделать?
<?php
$ib = array();
$ib[] = "'83\.149\.(\d+)\.(\d+)'";
$ib[] = "'193\.201\.(\d+)\.(\d+)'";
$ib[] = "'213\.129\.119\.(\d+)'";
$ib[] = "'85\.115\.224\.(\d+)'";
//И т.д.
$mobile_operator = false;
for($i = 0; $i < $count; $i++)
{
if(preg_match($ib[$i], $_SERVER['REMOTE_ADDR'])) $mobile_operator = true;
}
if($mobile_operator)
{
//Пользователь похоже с правда с мобильника
}
else
{
//Вероятно с компа...
}
?>
|
| |
| |
|
|
| |
|
|
| |
для: Unkind
(09.11.2006 в 22:49)
| | | база операторов уже есть )))
хочу определять с какого оператора ко мне зашли )) | |
| |
|
|
| |
|
|
| |
для: skor
(09.11.2006 в 22:53)
| | | Да. Я не так выразился. :)) | |
| |
|
|
| |
|
|
| |
для: Unkind
(09.11.2006 в 22:49)
| | | если не ошибаюсь то эта регулярка равносильна
<?
if(ereg("127.0.", $_SERVER['REMOTE_ADDR'])) {....}
?>
|
диапазончики примерно такие
193.201.228.0 - 193.201.230.255 - мегафон москва
193.201.230.0 - 193.201.235.1 - мегафон поволжье
193.201.235.0 - 193.201.237.255 - мегафон кавказ
регулярка увидит 193.201. и даст true | |
| |
|
|
| |
|
|
| |
для: skor
(09.11.2006 в 22:32)
| | |
<?
function 2int($ip) {
$a=explode(".",$ip);
return $a[0]*256*256*256+$a[1]*256*256+$a[2]*256+$a[3];
}
$ip = начало диапазона;
$ip['start'] = 2int($ip);
$ip = конец диапазона;
$ip['stop'] = 2int($ip);
$ip = искомый;
$ip['actual'] = 2int($ip);
if ($ip['actual'] >= $ip['start'] && $ip['actual'] <= $ip['stop']){
echo ("искомый ip лежит в заданном диапазоне");
}
|
| |
| |
|
|