Студия креативных разработок DevArt.PRO.
Разработка сайтов и форумов под ключ!
Сильнейшая команда в России по vBulletin - читать подробнее...
 
 
 
 

 
 
Здесь скоро опять что то будет...
 
 
 
 
 
 
Loading

Вернуться   форум vBSupport.org > vBSupport.org > Гурушник > kerk

Объявления
  • Изменения в правах
  • Каталог Фрилансеров
  • Добро пожаловать!
  • Premoderation
  • Новичкам!
  • For English speaking users
Ответ
 
Опции темы Опции просмотра
Старый 19.10.2008, 15:21   #1
k0t
 
Аватар для kerk
Запрет повторной регистрации с одного IP

несколько раз спрашивали уже подобный хак
где то уже выложил его, но не помню, в какой теме
цепляю здесь, что бы не потерялся =)
в плагине есть такой код:
PHP код:
eval(standard_error(fetch_error('alreadyregistered'$vbulletin->userinfo['username'], $vbulletin->session->vars['sessionurl']))); 
я прописал туда именно этот код, что бы не создавать еще одну фразу и не делать из плагина продукт, если нужно "наворотить" этот плагин, дерзайте, можно сделать свою "ошибку", которую покажет при регистрации узера с одного и того же IP
е еще, вобла определяет IP клиента гораздо грамотней, чем это реализовано в плагине, нужно так же как у воблы, опять же - дерзайте
Вложения
Тип файла: xml vbulletin-plugins.xml (677 байт, 69 просмотров)
  Ответить с цитированием
Сказали Спасибо:
Скрыть список поблагодаривших

ctrannik (23.01.2010), Gulia (15.08.2009), HooliganZZ (06.02.2009), kloWnishka (03.07.2009), sadovnikde (31.12.2009), Sakuredo (02.11.2008), vypik (24.02.2009)
Рекламка
Реклама на форуме

Файловый Архив

  • Неограниченное количество категорий и суб-категорий
  • Тонкие настройки прав доступа
  • Предпросмотр медиа файлов: FLV, IFLV, F4A, F4V, MP4, MP3, MOV и других...
  • Мультизагрузка файлов - SWFUploader
  • Добавление файлов с сервера
Подробности и история обновлений продукта в этой теме
Старый 16.11.2008, 11:49   #2
zax
На доске почёта
пшел нахер отсюда, урод
 
banned nax
При попытке регистрации выдаёт ошибку БД. Версия форума 3,6,11 стоит интеграция с DataLife. Пробовал как с ip имеющего регистрацию на форуме так и с чистого ip.
  Ответить с цитированием
Старый 16.11.2008, 19:14   #3
kerk
k0t
 
Аватар для kerk
какую именно ошибку?
текст ошибки?
===
я тестил на версии 3.7.3, хотя чего там тестить, хак простой до безобразия и вся его работа, это проверка IP по базе, во время реги нового узера
единственное, что может быть, это в строке запроса в БД, изменить:
PHP код:
$query $vbulletin->db->query_read("SELECT * FROM user WHERE ipaddress = '" $ip "'"); 
на этот код:
PHP код:
$query $vbulletin->db->query_read("SELECT * FROM " TABLE_PREFIX "user WHERE ipaddress = '" $ip "'"); 
т.е. если есть префиксы у таблиц, добавить константу TABLE_PREFIX в запрос
  Ответить с цитированием
Старый 11.08.2009, 12:34   #4
GiveMeABreak
Эксперт
 
Аватар для GiveMeABreak
Можно еще заюзать вот такую функцию
Цитата:
function getRealIpAddr()
{
if (!empty($_SERVER['HTTP_CLIENT_IP']))
{
$ip=$_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}
  Ответить с цитированием
Старый 11.08.2009, 12:41   #5
Ghost
Гуру
 
Аватар для Ghost
GiveMeABreak, а можно не изобретать велосипед и использовать встроенную в воблу функцию fetch_alt_ip() ('includes/class_core.php'):
PHP код:
    function fetch_alt_ip()
    {
        
$alt_ip $_SERVER['REMOTE_ADDR'];

        if (isset(
$_SERVER['HTTP_CLIENT_IP']))
        {
            
$alt_ip $_SERVER['HTTP_CLIENT_IP'];
        }
        else if (isset(
$_SERVER['HTTP_X_FORWARDED_FOR']) AND preg_match_all('#\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}#s'$_SERVER['HTTP_X_FORWARDED_FOR'], $matches))
        {
            
// make sure we dont pick up an internal IP defined by RFC1918
            
foreach ($matches[0] AS $ip)
            {
                if (!
preg_match('#^(10|172\.16|192\.168)\.#'$ip))
                {
                    
$alt_ip $ip;
                    break;
                }
            }
        }
        else if (isset(
$_SERVER['HTTP_FROM']))
        {
            
$alt_ip $_SERVER['HTTP_FROM'];
        }

        return 
$alt_ip;
    } 
;)

з.ы. чё за некропостинг... -_-
  Ответить с цитированием
Старый 11.08.2009, 13:38   #6
Myhu
Вечный олень
kerk, тебе надо в Jelsoft работать))).
  Ответить с цитированием
Старый 11.08.2009, 13:47   #7
a_aqua
На доске почёта
сам знаешь за что
 
banned nax
Оффтоп
  Ответить с цитированием
Старый 11.08.2009, 15:21   #8
Yoskaldyr
Специалист
Цитата:
Сообщение от Ghost Посмотреть сообщение
а можно не изобретать велосипед и использовать встроенную в воблу функцию fetch_alt_ip
А можно еще меньше велосипедов - использовать или константы IPADDRESS / ALT_IP или переменные $vbulletin->ipaddress / $vbulletin->alt_ip соответствкенно ))
(Все присваивается в момент инициализации, до всех хуков и даже до config.php, так что их можно использовать для cookiesalt)
  Ответить с цитированием
Старый 06.10.2010, 09:07   #9
generalbratsk
Простоузер
По нашим данным вы уже зарегистрированы на форуме под именем Незарегистрированный. Если вы забыли свой пароль, нажмите здесь. Если вы хотите изменить свой профиль, то нажмите здесь.
Почему ник не показывает?Хотя регил его под ник test 1 акк.

generalbratsk добавил 06.10.2010 в 09:07
Ответ напешите в ЛС

Последний раз редактировалось generalbratsk; 06.10.2010 в 09:07.. Причина: Добавлено сообщение
  Ответить с цитированием
Старый 20.10.2010, 20:21   #10
ranzez
Простоузер
Такая же проблемма на 3.8.6 Есть решение?
  Ответить с цитированием
Ответ

Закладки

Метки
повторная регистрация

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



 
 

Текущее время: 04:18 25.05.2012. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.6.1
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd. Перевод: zCarot