
19.11.2007, 15:04
|
|
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме: 4832771
Репутация:
1916
|
|
Сообщение от combatsxx
Нужен Скрипт (Пхп) для автоматического бана Айпи
Через куки или через mysql
Не совсем понял что значит для автоматического бана.
Если ты имеешь ввиду что ты вносишь ip в блэк и соответственно юзера не пускает на страницу, то можно это осуществить с Mysql.
Я бы сделал примерно так:
Создал бы таблицу в БД (например ipban) с полем ip
PHP код:
CREATE TABLE `ipban` (
`id` int NOT NULL auto_increment,
`ip` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
Заносить ip-шники примерно так:
ban.php
PHP код:
<?php
//Получаем IP
if(getenv('HTTP_X_FORWARDED_FOR'))
{$ip = getenv('HTTP_X_FORWARDED_FOR');}
elseif(getenv('REMOTE_ADDR'))
{$ip = getenv('REMOTE_ADDR');}
//Соединяемся с БД
$host = "localhost";
$user = "";
$pass = "";
$db = "";
$connect = @mysql_connect("$host", "$user","$pass");
@mysql_select_db("$db", $connect);
//Выводим форму
if($_POST['ips'] == null)
{echo"
<form action method='post'>
<input type='name' name='ips'>
<input type='submit' value='Забанить'>
</form>";
}
else{
$ips = htmlspecialchars($_POST['ips']);
//Делаем запрос на добавлние IP в блэк
$query = "INSERT INTO `ipban` VALUES(NULL, '$ips')";
$result = @mysql_query($query);
if(!$result) {echo"Ошибка!";}
else{echo"IP $ips забанен!";}
}
?>
Файл проверки ip на наличие бана
chek.php
PHP код:
<?php
//Получаем IP
if(getenv('HTTP_X_FORWARDED_FOR'))
{$ip = getenv('HTTP_X_FORWARDED_FOR');}
elseif(getenv('REMOTE_ADDR'))
{$ip = getenv('REMOTE_ADDR');}
//Соединяемся с БД
$host = "localhost";
$user = "";
$pass = "";
$db = "";
$connect = @mysql_connect("$host", "$user","$pass");
@mysql_select_db("$db", $connect);
//Сравниваем с ip-шниками в БД
$query = "SELECT * FROM `ipban` WHERE `ip` = '$ip'";
$result = @mysql_query($query);
if(@mysql_num_rows($result) > 0 )
{echo"Вы забанены!";}
else{echo"Вы не забанены!";}
?>
Короче бан по такому принципу мона сделать. За ошибки и извращенство в коде просьба не пинать, тока учу php 
Последний раз редактировалось .:ENOT:.; 21.11.2007 в 14:57..
|
|
|