drdroid Опубликовано 14 Ноября 2008 Жалоба Поделиться Опубликовано 14 Ноября 2008 [MOD] IPB StopForumSpam.comАвтор: Android (13.11.2008)Для: IPB v2.3.XРедактировать: 1 файлСкорость установки: 1 минута Особенности: на хостинге должны быть открыты соксы (функция file_get_contents), на многих халявных хостингах они закрыты. Описание:Это небольшая модификация которая позволит Вам проверять всех пользователей которые регистрируются по базе stopforumspam.com на принадлежность к сети спам-ботов и отсеивать таким образом спамеров еще на этапе регистрации. Мод очень эффективен и никак не отягощает процесс регистрации пользователей! Открываем файл: sources/action_public/register.codeВ самом конце файла, до:} ?>вставяем код: //----------------------------------------- // Проверка по базе www.stopforumspam.com // для отсеивания спамботов. // Входящие данные: $mail - почтовый адрес, $ip - айпишник // Возвращает false - если это не спам-бот, true - если mail или ip найдены в базе спамеров (т.е. это спам-бот) // Автор мода: Android, обсуждение тут: http://www.nulled.ws/showthread.code?t=86970 //----------------------------------------- function isSpambots($mail,$ip){ $spambot = false; //check the e-mail adress $xml_string = file_get_contents('http://www.stopforumspam.com/api?email='.$mail); $xml = new SimpleXMLElement($xml_string); if($xml->appears == 'yes'){ $spambot = true; }elseif($spambot != true){ //e-mail not found in the database, now check the ip $xml_string = file_get_contents('http://www.stopforumspam.com/api?ip='.$ip); $xml = new SimpleXMLElement($xml_string); if($xml->appears == 'yes'){ $spambot = true; } } return $spambot; }потом находим в функции create_account() (примерно 1990-2000 строка) следующий код: //----------------------------------------- // Check the reg_code //-----------------------------------------и до него вставляем код: //----------------------------------------- // Не спамер ли это? (проверка по базе stopforumspam.com) //----------------------------------------- $stopforumspam = $this->isSpambots($in_email,$_SERVER["REMOTE_ADDR"]); if ( $stopforumspam ) { $form_errors['email'][$this->ipsclass->lang['reg_error_email_ban']] = "Простите но Вы занесены в базу спамеров stopforumspam.com и не можете продолжить регистрацию. Если это недоразумение обратитесь к администрации форума."; }Вот и все, теперь у вас есть хорошая проверка по базе мыл и айпишников спамеров, которая своевременно пополняется ;-). Теперь для проверки работоспособности попробуйте зарегистрировать акк на какоенить спамерское мыло, например на это sakyrastar@gmail.com (или выберите любое тут http://www.stopforumspam.com/), вам должно выдаться предупреждение мол:Простите но Вы занесены в базу спамеров stopforumspam.com и не можете продолжить регистрацию. Если это недоразумение обратитесь к администрации форума.З.Ы. Даную проверку легко можно встроить в любой скрипт, на сайте http://www.stopforumspam.com есть примеры и описания АПИ... Добавлено через 4 минутыКстати можно написать небольшой скриптик для проверки уже имеющихся юзеров, который прошелся по зареганым юзерам и всех кто спамер удалил или переместил в отдельную группу, тем самым вы нехило почистите форум от левых аккаунтов... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
sudmed Опубликовано 14 Ноября 2008 Жалоба Поделиться Опубликовано 14 Ноября 2008 Все бы ничего, но в той базе преобладают буржуйские спаммеры, "наших" - практически нет.Поэтому какой ожидать эффект от установки этого хака на рунетовском форуме? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Freestyler(c) Опубликовано 14 Ноября 2008 Жалоба Поделиться Опубликовано 14 Ноября 2008 это точно... надо рубазу Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Arhar Опубликовано 14 Ноября 2008 Жалоба Поделиться Опубликовано 14 Ноября 2008 вы это, опоздали маленькоhttp://www.ibresource.ru/db/1079/ Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Freestyler(c) Опубликовано 14 Ноября 2008 Жалоба Поделиться Опубликовано 14 Ноября 2008 Кстати, чтобы отсеять забугорных ботов, не проще бан поставить в фильтре *.com основная масса с этого домена идет ведь Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Chib@ Опубликовано 14 Ноября 2008 Жалоба Поделиться Опубликовано 14 Ноября 2008 Кстати, чтобы отсеять забугорных ботов, не проще бан поставить в фильтре *.com основная масса с этого домена идет ведьСкорее, это способ отсеять забугорных юзверей....Да я ж блин выкладывал сюда уже мод этот( точнее http://www.ibresource.ru/db/1079/)Надо поиск юзать.... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
drdroid Опубликовано 14 Ноября 2008 Автор Жалоба Поделиться Опубликовано 14 Ноября 2008 Да я ж блин выкладывал сюда уже мод этот( точнее http://www.ibresource.ru/db/1079/)Надо поиск юзать.... Да идеи схожи, но это не совсем тот мод. Ваш мод имеет больший функционал, но он работает с базой antibot.org.ua, а если посмотреть статистику: На antibot.org.uaВсего записей: 23808 А на stopforumspam.comWe currently have information on 97907 spammers since about December 2006. Вообщем мне кажется что у stopforumspam.com более приличная база и хуже от того что я выложил тут это решение никому не стало! Все бы ничего, но в той базе преобладают буржуйские спаммеры, "наших" - практически нет.Поэтому какой ожидать эффект от установки этого хака на рунетовском форуме?Вы что всю базу прошурстили? Там хватает и информации о отечественных спам-сетях, но у спам-сетей нет национальности, у меня русский спам слали с айпишников США, а самая большая зомби-сеть в китае как известно вот вам и эффективность :-). Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
darkblade Опубликовано 23 Декабря 2008 Жалоба Поделиться Опубликовано 23 Декабря 2008 всё сделал как написано впервом посту. при регистрации пользователя вот такая вот ошибкаFatal error: Cannot instantiate non-existent class: simplexmlelement in /home/localhost/docs/forum/sources/action_public/register.php on line 2788 Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Arhar Опубликовано 23 Декабря 2008 Жалоба Поделиться Опубликовано 23 Декабря 2008 любые вопросы, начинающиеся с "все сделал как сказано, ниработаиить!!" идут фтопку, но сегодня я добрый, поэтому укажу конкретный путь2.2 Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
darkblade Опубликовано 28 Декабря 2008 Жалоба Поделиться Опубликовано 28 Декабря 2008 любые вопросы, начинающиеся с "все сделал как сказано, ниработаиить!!" идут фтопку, но сегодня я добрый, поэтому укажу конкретный путь2.2не нашёл для себя там ответа Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 28 Декабря 2008 Жалоба Поделиться Опубликовано 28 Декабря 2008 Тогда вам рано заниматься администрированием форумов. Там чёрным по белому написано, что в вашем случае нужно как минимум выложить кусок кода из названного файла. Перечитайте ещё раз. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
darkblade Опубликовано 28 Декабря 2008 Жалоба Поделиться Опубликовано 28 Декабря 2008 Тогда вам рано заниматься администрированием форумов. Там чёрным по белому написано, что в вашем случае нужно как минимум выложить кусок кода из названного файла. Перечитайте ещё раз.Уважаемый Sannis, там чёрно по белому написано 5 пунктов. на это я и покупал лицензию форума а не скачивал null дабы получить техническую поддержку которая очень плохо развита IBR Forum Team, а те кто скачивают null тот правильно делает потому что нормальной технической поддержки Вы не даёте. Sannis а ошибка выдаётся судя по номеру строки в файле "on line 2788" $xml = newSimpleXMLElement($xml_string);она из кода того что выложили в самом первом посту Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Arhar Опубликовано 28 Декабря 2008 Жалоба Поделиться Опубликовано 28 Декабря 2008 Да, конечно, все члены Team обладают телепатическими способностями и могут узнать ошибку и дать на нее решение, даже не зная кода, в котором она возникает.для слепых пишу громко:напечатай сюда код из файла /home/localhost/docs/forum/sources/action_public/register.php начиная с линии 2760, заканчивая 2800 Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 28 Декабря 2008 Жалоба Поделиться Опубликовано 28 Декабря 2008 Тогда вам рано заниматься администрированием форумов. Там чёрным по белому написано, что в вашем случае нужно как минимум выложить кусок кода из названного файла. Перечитайте ещё раз.Уважаемый Sannis, там чёрно по белому написано 5 пунктов. на это я и покупал лицензию форума а не скачивал null дабы получить техническую поддержку которая очень плохо развита IBR Forum Team, а те кто скачивают null тот правильно делает потому что нормальной технической поддержки Вы не даёте.Здравствуйте. А в сообщении выше крупным шрифтом написано, что нужно читать пункт 2.2. IBR Forum Team не является той структурой, которая поддерживает клиентов. Поддержка, о которой вы говорите и за которую вы заплатили, осуществляется в клиент-центре. Денег с того, что вы кипили лицензию я и другие члены IBR Forum Team не имеют Так что не стоит делать громких заявлений Если качество поддержки в клиент-центре вас не устраивает, вы может пожаловаться об этом руководству компании или в соответствующей теме в клиентском форуме. Если вы хотите, чтобы вам установили и настроили форум сторонние специалисты, то это наверняка потребует дополнительных затрат. IBR Forum Team поможет вам по мере своего свободного времени, но для этого вы должны изъясняться менее требовательным тоном и следовать нашим советам. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
darkblade Опубликовано 28 Декабря 2008 Жалоба Поделиться Опубликовано 28 Декабря 2008 Да, конечно, все члены Team обладают телепатическими способностями и могут узнать ошибку и дать на нее решение, даже не зная кода, в котором она возникает.для слепых пишу громко:напечатай сюда код из файла /home/localhost/docs/forum/sources/action_public/register.php начиная с линии 2760, заканчивая 2800ну зачем же так кричать? я конечно понимаю что тут нас много таких не программеров с которыми Вам тяжело общаться и которые плохо понимают Ваши намёки то что Вы от них хотите. буду очень Вам признателен. // Grab CAPTCHA template bit require_once( KERNEL_PATH . 'class_captcha.php' ); $captchaClass = new class_captcha( $this->ipsclass, $this->ipsclass->vars['bot_antispam_type'] ); $captchaHTML = $captchaClass->getTemplate(); } if ($this->ipsclass->vars['bot_antispam']) { $this->output = str_replace( "<!--{REG.ANTISPAM}-->", $captchaHTML, $this->output ); } } else { $this->output = $this->ipsclass->compiled_templates['skin_register']->show_dumb_form($type); } $this->page_title = $this->ipsclass->lang['activation_form']; $this->nav = array( $this->ipsclass->lang['activation_form'] ); } //----------------------------------------- // Проверка по базе www.stopforumspam.com // для отсеивания спамботов. // Входящие данные: $mail - почтовый адрес, $ip - айпишник // Возвращает false - если это не спам-бот, true - если mail или ip найдены в базе спамеров (т.е. это спам-бот) // Автор мода: Android, обсуждение тут: http://www.nulled.ws/showthread.code?t=86970 //----------------------------------------- function isSpambots($mail,$ip){ $spambot = false; //check the e-mail adress $xml_string = file_get_contents('http://www.stopforumspam.com/api?email='.$mail); $xml = newSimpleXMLElement($xml_string); if($xml->appears == 'yes'){ $spambot = true; }elseif($spambot != true){ //e-mail not found in the database, now check the ip $xml_string = file_get_contents('http://www.stopforumspam.com/api?ip='.$ip); $xml = new SimpleXMLElement($xml_string); if($xml->appears == 'yes'){ $spambot = true; } } return $spambot; } Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 28 Декабря 2008 Жалоба Поделиться Опубликовано 28 Декабря 2008 Либо у вас стоит PHP версии ниже 5й, либо он устанавливался с параметром --disable-simplexml, а значит исправить это может только технический персонал хостинга :/ Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
darkblade Опубликовано 28 Декабря 2008 Жалоба Поделиться Опубликовано 28 Декабря 2008 Sannis благодарю за ответ Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.