Strict Standards: Resource ID#18 used as offset, casting to integer (18) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#23 used as offset, casting to integer (23) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#25 used as offset, casting to integer (25) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#26 used as offset, casting to integer (26) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Блок по IP адресу...
ТвойWeb ТвойWeb
Качественный Европейский хостинг
Форум для чайников
 Чат на форуме      Помощь      Поиск      Пользователи


 Страниц (3): [1] 2 3 »   

> Без описания
Maksss
Отправлено: 20 Января, 2006 - 04:59:36
Post Id


Junior Member


Покинул форум
Сообщений всего: 64
Дата рег-ции: Нояб. 2005  
Откуда: Moscow

Карма 0




Здравствуйте!!!
Есть вот такой код
Цитата:

<?
// Начало IP адреса жертв =))
$ip="121.0.1.0";
if(empty($_SERVER['REMOTE_ADDR']))
die("<b>Ваш IP адрес не определён!</b>"Подмигивание;
elseif(preg_match("!".preg_quote($ip)."!",$_SERVER['REMOTE_ADDR']))
die("тебе сюда нельзя!!!"Подмигивание;
?>


А можно ли сделать чтобы писать не только один IP или $ip="121.0.1.0";$ip="666.66.66"; - много раз, а например штук 1...n через запятую??
 
 Top
Maksss
Отправлено: 21 Января, 2006 - 02:15:02
Post Id


Junior Member


Покинул форум
Сообщений всего: 64
Дата рег-ции: Нояб. 2005  
Откуда: Moscow

Карма 0




Скажите пожалуйста, почему если я пишу например $ip="123.255.111"; $ip="свой ip ";
то в такой последовательномти мне закрывается доступ, а если $ip="свой ip "; $ip="123.255.111"; то доступ открыт, что бы это могло быть?
 
 Top
RaZoR
Отправлено: 21 Января, 2006 - 02:28:10
Post Id



Full Member


Покинул форум
Сообщений всего: 225
Дата рег-ции: Март 2005  
Откуда: Оренбург

Карма 0




ошибка в неправильности подхода в целом.
1. зачем использовать preg_match для сравнения двух строк?
2. ip-адрес состоит из четырех групп цифр.
3. когда ты пишешь $ip="123.255.111"; $ip="свой ip "; , то переменной $ip вначале присваивается "123.255.111", а затем заменяется на твой ip.
выводы:
1. для сравнения достаточно strstr($_SERVER['REMOTE_ADDR'],$ip);
2. хочешь банить не конкретный айпи, а подсеть, поищи на этом форуме функцию для этого, я выкладывал.
3. хочешь банить несколько ip, используй массив.
 
 Top
Maksss
Отправлено: 21 Января, 2006 - 03:50:10
Post Id


Junior Member


Покинул форум
Сообщений всего: 64
Дата рег-ции: Нояб. 2005  
Откуда: Moscow

Карма 0




Если банить сеть - то просто пишешь начальные цифры IPшника сети...
 
 Top
RaZoR
Отправлено: 21 Января, 2006 - 05:04:45
Post Id



Full Member


Покинул форум
Сообщений всего: 225
Дата рег-ции: Март 2005  
Откуда: Оренбург

Карма 0




Maksss
если так, то при твоем подходе возможна следующая ситуация:
ты "забанил подсеть" 123.255.111
к тебе заходит посетитель с айпи 192.123.255.111 и ему надпись: "тебе сюда нельзя!!!"
 
 Top
Aeron
Отправлено: 26 Марта, 2006 - 10:56:56
Post Id


Newbie


Покинул форум
Сообщений всего: 33
Дата рег-ции: Янв. 2006  
Откуда: Москва

Карма 0




Подскажите пожалуйста как будет выглядеть код если нужно забанить два IP?
 
 Top
RaZoR
Отправлено: 26 Марта, 2006 - 19:57:59
Post Id



Full Member


Покинул форум
Сообщений всего: 225
Дата рег-ции: Март 2005  
Откуда: Оренбург

Карма 0




подправив код и первого поста, получается
CODE:
<?
$ip1="";\\первый ip-адрес
$ip2="";\\второй ip-адрес
$ip=$_SERVER['REMOTE_ADDR'];
if(empty($ip))
die("<b>Ваш IP адрес не определён!</b>");
elseif(($ip==$ip1)||($ip==$ip2)) die("тебе сюда нельзя!!!");
?>

способ, конечно же, далеко не лучший хотя бы способом определения собственного ip, но смысл в этом.
 
 Top
Aeron
Отправлено: 07 Апреля, 2006 - 09:06:47
Post Id


Newbie


Покинул форум
Сообщений всего: 33
Дата рег-ции: Янв. 2006  
Откуда: Москва

Карма 0




А чтобы три IP забанить код такой?
CODE:
<?
$ip1="";\\первый ip-адрес
$ip2="";\\второй ip-адрес
$ip3="";\\третий ip-адрес
$ip=$_SERVER['REMOTE_ADDR'];
if(empty($ip))
die("<b>Ваш IP адрес не определён!</b>");
elseif(($ip==$ip1)||($ip==$ip2)||($ip==$ip3)) die("тебе сюда нельзя!!!");
?>
 
 Top
ETC Администратор
Отправлено: 07 Апреля, 2006 - 15:32:06
Post Id



Flash-coder


Покинул форум
Сообщений всего: 5275
Дата рег-ции: Дек. 2003  
Откуда: TimeZero

Карма 26




А если ip-шников 50 штук?
 
 Top
SviMik Супермодератор
Отправлено: 07 Апреля, 2006 - 17:29:54
Post Id



Где-то там...


Покинул форум
Сообщений всего: 3538
Дата рег-ции: Окт. 2004  
Откуда: Tallinn, Estonia

Карма 4




ETC
Сказал альфа, говори и бета...
Что предлагаешь? Улыбка
 
 Top
Страниц (3): [1] 2 3 »
Сейчас эту тему просматривают: 4 (гостей: 4, зарегистрированных: 0, скрытых: 0)
« PHP/Perl »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только администраторы и модераторы могут отвечать на сообщения в этом разделе.
 



Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0487]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33