|
PHP + MySQL бан ipОбсуждение темы PHP + MySQL бан ip в разделе ASP, Perl, PHP и MySQL, часть категории ВЕБ-ПРОГРАММИРОВАНИЕ; Приветствую. Творческое описание: Задача крайне проста, есть админка, хозяин заходит в админку заполняет несколько строчек и ip (злоумышленника) после чего когда злой батька ... |
|
Опции темы |
09.06.2010, 00:31 | #1 |
|
Приветствую.
Творческое описание: Задача крайне проста, есть админка, хозяин заходит в админку заполняет несколько строчек и ip (злоумышленника) после чего когда злой батька заходит на сайт он видит надпись что его послали на все 4 стороны В Админке все готово и все работает а на сайте немного не так как планировалось. Техническое описание: SQL CREATE TABLE IF NOT EXISTS `ipbann` ( `id_ipbann` int(255) NOT NULL AUTO_INCREMENT, `ip_ipbann` varchar(50) NOT NULL, `date_time_ipbann` datetime NOT NULL, `stat_ipbann` varchar(9) NOT NULL, `pr_ipbann` text NOT NULL, PRIMARY KEY (`id_ipbann`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ; Есть запросы в БД === INSERT INTO `dipt`.`ipbann` ( `id_ipbann` , `ip_ipbann` , `date_time_ipbann` , `stat_ipbann` , `pr_ipbann` ) VALUES ( NULL , '00.000.00.000', '2010-06-08 23:54:42', 'ban', '1' - Описание: id_ipbann - Эта ячейка, получает индивидуальное число строк ip_ipbann - Эта ячейка, получает айпи адрес злоумышленника который водит админ сайта. date_time_ipbann - Дата и Время создания записи в БД stat_ipbann - Статус бана. pr_ipbann - Текст описания который выводиться при посещения с забаненого ip. Это что касается данных с таблице БД. Код php === $ip1=$_SERVER['REMOTE_ADDR']; $sql1 = mysql_query("SELECT ip_ipbann FROM ipbann WHERE ip_ipbann='".$_SERVER['REMOTE_ADDR']."' ORDER BY LIMIT 1"); $query1 = mysql_query($sql1); if ($query1 == $ip1) { echo " <h1>Вы забанены на проекте ААА $resipbann[ip_ipbann]</h1> $resipbann[date_time_ipbann]<br>$resipbann[pr_ipbann]"; exit(); } else { echo ""; } $ip1=$_SERVER['REMOTE_ADDR']; Отвечает за ip вошедшего, то есть глобально находит у посетителя его ip, после чего данный ip получает переменную $ip1. $sql1 = mysql_query("SELECT ip_ipbann FROM ipbann WHERE ip_ipbann='".$_SERVER['REMOTE_ADDR']."' ORDER BY LIMIT 1"); Данный участок кода делает запрос к базе данных вытаскивая из него нужное поля для последующей проверки, с ip вошедшим. $query1 = mysql_fetch_array($sql1); Заносим запрос в массив для того чтобы потом проверить запрос и ip. if ($query1 == $ip1) { echo " <h1>Вы забанены на проекте ААА $resipbann[ip_ipbann]</h1> $resipbann[date_time_ipbann]<br>$resipbann[pr_ipbann]"; exit(); } Проверяем ip посетителя c тем что в базе данных, если ip есть в БД то вытаскиваемым ему информацию что он забанен, в данной части кода то же есть дополнительная информация когда забанен и за что забанен, после прерываем все будущее действия сайта, то есть загрузку сайта. else { echo ""; } Если же ip адрес вошедшего не существует то продолжаем работать с сайтом. Проблема: При занесении в БД хоть одного ip весь сайт для всех забанен Вопрос в чем, проблема и как исправить код? Всем спасибо. (Тухлыми помидорами не кидайтесь). |
|
11.06.2010, 10:32 | #2 | |||
|
Во первых:
Цитата:
Во вторых: Цитата:
Цитата:
В общем повнимательнее, в использовании выбранных функций. |
|||
|
Этот пользователь сказал спасибо moskitos80 за это полезное сообщение: | Tigran (11.06.2010) |
11.06.2010, 17:23 | #3 |
|
О спасибо!
Очень помогли... Это именно то что нужно было! Скоро опубликую весь код может кому-то понадобиться. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
mySQL | iDeViL | ASP, Perl, PHP и MySQL | 8 | 31.01.2011 21:30 |
MySQL | 74ivan74 | Кальянная | 0 | 16.10.2010 14:33 |
MySQL | Razrushitel | ASP, Perl, PHP и MySQL | 3 | 18.09.2005 16:18 |
Mysql под win | Lex | ASP, Perl, PHP и MySQL | 2 | 03.12.2004 17:27 |
PHP и Mysql | vision | HTML, CSS, JavaScript | 0 | 18.07.2003 08:59 |
Реклама на форуме
Условия размещения рекламы
Биржа ссылок
Заработай на сайте!
|