Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: блокировка ip-адреса
 
 автор: ronin   (26.02.2007 в 16:52)   письмо автору
 
 

Здравствуйте! К примеру, есть посетители, которые закидывают объявления несоответствующие тематики доски объявлений. Как мне заблокировать их новые попытки подать объявления. в базе остаються их ip. Предположим:

if ($_SERVER['REMOTE_ADDR'] ='11.11.111.11', '22.222.222.22') 
// возможно тектовый файл с перечнем адресов

  {
     echo Dosvidanya! .  ';
     exit;
  }

   
 
 автор: Trianon   (26.02.2007 в 16:53)   письмо автору
 
   для: ronin   (26.02.2007 в 16:52)
 

Вы сохраняете IP флудеров в отдельную таблицу?

   
 
 автор: ronin   (26.02.2007 в 17:18)   письмо автору
 
   для: Trianon   (26.02.2007 в 16:53)
 

нет, думаю размещать в текстовом файле, который можно было бы обновлять. При размещении объявления, ко мне отправляется письмо, с содержимым и ip. Так что мне остается лиши добавить ip в текстовый файл.

   
 
 автор: Trianon   (03.04.2007 в 13:49)   письмо автору
 
   для: ronin   (26.02.2007 в 17:18)
 

тогда при чем тут MySQL?

   
 
 автор: ALEXIT   (03.04.2007 в 13:41)   письмо автору
 
   для: ronin   (26.02.2007 в 16:52)
 

Могу предложить такой вариант (ip хранятся в файле ip.dat по одному в каждой строке):

<?
// получаем ip запустившего скрипт компьютера
$ip = ($_SERVER['REMOTE_ADDR']);
// открываем файл с данными и заносим его в массив
$f file("ip.dat");
// проходим по циклу и сравниваем ip
for ($i=0;;$i++)
{
    
// если массив кончился завершаем цикл и продолжаем работу - пользователь не забанен
    
if (!$f[$i] break;
    
// если ip совпали выводим сообщение и завершаем работу скрипта
    
if ($ip == ($f[$i]."\n")
    {
        echo 
'<h1>Вы забанены!</h1>';
        exit;
    }
}
?>

Примерно так, конечно такой цикл не самый удачный в этом случае, но работать будет.

   
 
 автор: golovdinov   (03.04.2007 в 14:38)   письмо автору
 
   для: ALEXIT   (03.04.2007 в 13:41)
 

to ALEXIT

так будет проще :)


<?
// получаем ip запустившего скрипт компьютера 
$ip = ($_SERVER['REMOTE_ADDR']); 
// открываем файл с данными и заносим его в массив 
$file file("ip.dat"); 
// проходим по циклу и сравниваем ip
foreach ($file as $v) {
    if (
$_SERVER['REMOTE_ADDR'] == $v) exit ("<h1>Козел!</h1>");
}
?>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования