несколько раз спрашивали уже подобный хак
где то уже выложил его, но не помню, в какой теме
цепляю здесь, что бы не потерялся =)
в плагине есть такой код:
я прописал туда именно этот код, что бы не создавать еще одну фразу и не делать из плагина продукт, если нужно "наворотить" этот плагин, дерзайте, можно сделать свою "ошибку", которую покажет при регистрации узера с одного и того же IP
е еще, вобла определяет IP клиента гораздо грамотней, чем это реализовано в плагине, нужно так же как у воблы, опять же - дерзайте
При попытке регистрации выдаёт ошибку БД. Версия форума 3,6,11 стоит интеграция с DataLife. Пробовал как с ip имеющего регистрацию на форуме так и с чистого ip.
какую именно ошибку?
текст ошибки?
===
я тестил на версии 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 в запрос
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'];
}
а можно не изобретать велосипед и использовать встроенную в воблу функцию fetch_alt_ip
А можно еще меньше велосипедов - использовать или константы IPADDRESS / ALT_IP или переменные $vbulletin->ipaddress / $vbulletin->alt_ip соответствкенно ))
(Все присваивается в момент инициализации, до всех хуков и даже до config.php, так что их можно использовать для cookiesalt)
По нашим данным вы уже зарегистрированы на форуме под именем Незарегистрированный. Если вы забыли свой пароль, нажмите здесь. Если вы хотите изменить свой профиль, то нажмите здесь.
Почему ник не показывает?Хотя регил его под ник test 1 акк.
generalbratsk добавил 06.10.2010 в 09:07
Ответ напешите в ЛС
Последний раз редактировалось generalbratsk; 06.10.2010 в 09:07..
Причина: Добавлено сообщение