форум vBSupport.ru > vBulletin > Old vB versions (3.0.x & 2.x.x) > vBulletin 3.7.x > Made in vBSupport.org 3.7
  • »
VBsupport перешел с домена .ORG на родной .RU Ура! Пожалуйста, обновите свои закладки - VBsupport.ru
 
 
 
 
snake007v
Знаток
 
snake007v's Avatar
Arrow Check if IP already registred
1

Надо было запретить повторную регу юзеров на форуме в локальной сети.
Собственно, проверяет ИП перед регистрацией в списке уже зареганных юзеров.
Простите за мое незнание движка, написано на скорую руку, чтоб не в никать в переменные булки. Когда буду писать для проекта большую ролевую систему - интегрирую с булкой это дополнение. А счас выкладываю что есть. Не судите строго.
Крайне полезная штука для локальных форумов.
в файле register.php найти:
PHP Code:
// pre-cache templates used by specific actions
$actiontemplates = array(
    
'requestemail' => array(
        
'activate_requestemail'
    
),
    
'none' => array(
        
'activateform'
    
)
); 
и после добавить:
PHP Code:
$uname имя пользователя БД;
$pwd пароль;
$host localhost;
$db база банных;
$ip $_SERVER["REMOTE_ADDR"];
$connect = @mysql_connect($host$uname$pwd) or die("DATABASE CONNECTION ERROR: Try again latter");
$mysql_select mysql_select_db($db) or die(mysql_error());
$query "SELECT * FROM user WHERE ipaddress = '".$ip."'";
$result mysql_query($query);
if((
mysql_num_rows($result) == 1) OR (mysql_num_rows($result) > 1))
{
unset (
$uname$pwd$host$db$ip$connect$mysql_select$query$result);
    echo (
"<center><b>Вы уже зарегистрированы на форуме!!!</center></b>");
    
mysql_close();
    exit;
    } 
только не забываем править конфиг.
Плагином от керка:
vbulletin-plugins.xml

Last edited by snake007v : 09-07-2008 at 10:14 PM.
Bot
Yandex Bot Yandex Bot is online now
 
Join Date: 05.05.2005
Реклама на форуме А что у нас тут интересного? =)
 
 
Тиджик
Продвинутый
 
Тиджик's Avatar
Default
0

snake007v, а тебе в голову не приходило что не у всех статические айпи??
 
 
OldEr
Специалист
Master
 
OldEr's Avatar
Default
3

Quote:
Originally Posted by Тиджик View Post
snake007v, а тебе в голову не приходило что не у всех статические айпи??
И что? Тогда можно вообще сказать, что все через прокси сидят. Человек делал для себя и выложил для всех. А умничать каждый может.
 
 
snake007v
Знаток
 
snake007v's Avatar
Arrow
0

Quote:
Originally Posted by Тиджик View Post
snake007v, а тебе в голову не приходило что не у всех статические айпи??
У меня в сети у всех 2,5 тысячи юзеров статический ип. Правка сделана именно для таких случаев. Если у тебе не подходит - не используй. А рассказывать какой ты продвинутый в IP протоколе можешь в другой теме.
если кто-то толково впялит запрос к бд в код регистрации, использую переменные булки - буду благодарен.
 
 
kerk
k0t
 
kerk's Avatar
Default
2

snake007v, можно все это организовать без редактирования файла, простым плагином
долго это дело не ковырял, но можно и отдельный шаблон замутить, что бы выводило резулт не просто принтом на белую страницу, а как обычную страницу vB
можно так же добавить настройки к хаку (но это будет уже не плагин, а продукт), например если ты будешь регить тестовый аккаунт, а IP-шник твой и он уже есть в БД, тебе выдаст запрет на регистрацию
Attached Files
File Type: xml vbulletin-plugins.xml (670 Bytes, 23 views)
 
 
snake007v
Знаток
 
snake007v's Avatar
Arrow
0

kerk, 1. спасибо за доведение до ума.
2. Не хотел вникать в переменные среды. Да, сложного ничего нет, но я не шарю в xml и страдаю нехваткой времени.
кстати, а что же настраивать то?

Last edited by snake007v : 09-07-2008 at 10:08 PM.
 
 
kerk
k0t
 
kerk's Avatar
Default
2

Quote:
Originally Posted by snake007v View Post
но я не шарю в xml и страдаю нехваткой времени.
а там ненадо шарить в xml, форум сам за тебя все сделает, тебе просто нужно было добавить код в плагин и подключить его нужным хуком, хуки из файла регистер.пхп ты видел, раз ковырял этот файл
==
а времени потрачено на создание и тестирование этого плагина = 5 мин. =)
==
настраивать?
да хотя бы исключить user_ID админов из поиска в запросе
===
да, еще можно вместо print "<center><strong>You already registered!!!</strong></center>"; вбить в плагин print_no_permission();
тогда узер увидит стандартную страницу vB с запретом:
Quote:
Вы не авторизованы на форуме или не имеете доступа к этой странице. Это могло произойти по одной из нескольких причин:
  • ............
  • ............
  • ............
можно перенаправить узера на любую страницу на форуме, можно сказать ему, какой у него ник, если найдется совпадение с его IP, да много чего можно =)
 
 
Gostemilov
Специалист
Default
0

А нельзя готовый продукт одним файлом? А то как-то непонятно, хватит ли одного импорта XML (у меня, кстати, после этого никаких изменений не произошло, для проверки зарегистрировался трижды с одного ИП) или надо еще что-то править. И если да, то где?
 
 
kerk
k0t
 
kerk's Avatar
Default
1

Gostemilov, я где то на форуме выкладывал уже переделанный плагин (точно такой же), на компе не могу найти, (наверное) удалил за ненадобностью
там поправлен запрос в БД и некоторые мелочи
можно так же выдрать код плагина из хака "тестирование перед регистрацией", там он тоже есть и работает =)
===
нашел =)
Attached Files
File Type: xml vbulletin-plugins.xml (697 Bytes, 13 views)

Last edited by kerk : 02-16-2009 at 07:22 PM. Reason: ooops... find it =)
 
 
Gostemilov
Специалист
Default
0

Работает, спасибо! Но возник дополнительный вопрос. В качестве сообщения об ошибке выбрана фраза alreadyregistered, которая по смыслу ну никак не подходит к данному случаю. Создал свою фразу, Double_IP_Registered, заменил в модуле одно на другое.

Получаю сообщение Phrase Double_IP_Registered not found

Понимаю, что все просто, но в чем тут загвоздка? Как можно подставить свою фразу?

Заранее спасибо.
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off




All times are GMT +4. The time now is 12:33 AM.


Powered by vBulletin® Version 3.5.7
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Loading...