Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » Единая регистрация: общие пользователи для разных форумов

Модерирует : Antuan

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

anami city



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Единая регистрация.
 
У меня есть основной домен, к примеру, www.domain.ru и несколько дочерних:
s.domain.ru, a.domain.ru, f.domain.ru и т.д. Хочу разместить на дочерних доменах по одной конференции на домен, а на главном домене создать систему регистрации.
Как сделать так, чтобы пользователь, зашедший на www.domain.ru и зарегистрировавшись получил доступ к остальный конференциям.
Т.Е. чтобы пользователю не надо было регистрироваться на каждом из конференцций.
собираюсь использовать IkonBoard 2.1.9. Rus

Всего записей: 36 | Зарегистр. 08-03-2004 | Отправлено: 17:18 27-03-2004 | Исправлено: lynx, 23:46 01-04-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
anami city
 
Полагаю, можно в файле register.cgi
 
дописать после:
 

Код:
 
   $filetomake = "$ikondir" . "members/$memberfiletitle.cgi";
        open(FILE, ">$filetomake");
        flock(FILE, 2);
        print FILE "$inmembername|$password|$membertitle|$membercode|$numberofposts|$emailaddress|$showemail|$ipaddress|$homepage|$trash|$icqnumber|$location|$interests|$joineddate|$lastpostdate|$signature|$timedifference|$privateforums|$useravatar|$trash|$trash|$trash";
        close(FILE);
 
 

 
 

Код:
 
$ikondir2="путь_на_сервере_ко_второй_конференции";
   $filetomake = "$ikondir2" . "members/$memberfiletitle.cgi";
        open(FILE, ">$filetomake");
        flock(FILE, 2);
        print FILE "$inmembername|$password|$membertitle|$membercode|$numberofposts|$emailaddress|$showemail|$ipaddress|$homepage|$trash|$icqnumber|$location|$interests|$joineddate|$lastpostdate|$signature|$timedifference|$privateforums|$useravatar|$trash|$trash|$trash";
        close(FILE);
 

 
и т.д.
 
При этом надо быть осторожней - если ты проверяешь, не забанен ли пользователь, то проверять надо столько раз, сколько у тебя конференций.
 
После::

Код:
 
     $filetoopen = "$ikondir" . "data/banlist.cgi";
        open(FILE,"$filetoopen");
        @bannedmembers = <FILE>;
        close(FILE);
       
        foreach (@bannedmembers) {
            ($bannedname,$bannedemail,$bannedip) = split(/\|/,$_);
            chomp $bannedname;
            chomp $bannedemail;
   
   
$bannedmember = "yes" if(($emailaddress eq "$bannedemail") || ($inmembername eq "$bannedname"));
 
}        
print header(); &error("Регистрация&Извините\, Вы не можете быть зарегистрированы\. Обратитесь к администратору конференции")  if ($bannedmember eq "yes");
 

 

Код:
 
 
     $filetoopen = "$ikondir2" . "data/banlist.cgi";
        open(FILE,"$filetoopen");
        @bannedmembers2 = <FILE>;
        close(FILE);
       
        foreach (@bannedmembers2) {
            ($bannedname2,$bannedemail2,$bannedip2) = split(/\|/,$_);
            chomp $bannedname2;
            chomp $bannedemail2;
   
   
$bannedmember2= "yes" if(($emailaddress eq "$bannedemail2") || ($inmembername eq "$bannedname2"));
 
}        
print header(); &error("Регистрация&Извините\, Вы не можете быть зарегистрированы\. Обратитесь к администратору конференции")  if ($bannedmember2 eq "yes");
 

 
Это навскидку. Должно работать, хотя, можно и изящней, но это уже детали, только тормозить должно - много проверок.  
 
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 18:38 27-03-2004
anami city



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
думаю вы меня не так поняли...
регистраию (одну на все конфы) рзместить на domain.ru  а конфа на дочерних...
 
как убрать тормоза (про проверки, запросы), допустим у меня этих конф будет 20 и больше... это же отразится на скорости обработки запросов...

Всего записей: 36 | Зарегистр. 08-03-2004 | Отправлено: 14:51 28-03-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
anami city
 
Ну, тогда сразу их (пользователей) писать отдельно.
Везде где:
 
chdir("$ikondir" . "members") || die "Не найдена директория пользователей";
 
или:
 
$filetoopen = ("$ikondir" . "members/$member");
 
Пиши:
 
$filetoopen = ("$memberdir" . "members/$member");
 
А в файле data/boardinfo.cgi
пропищи еще переменную:
 
$memberdir= "/путь/к/папке/с/мемберами";

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 17:42 28-03-2004
anami city



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
во первых, хочу поблагодорить за высланный пароь...
2 - ое:
в икондире есть папку мембер...
а нельзя ли на кадой конференции(каждого поддомена), сделать копию имен пользователей и разместить их в других папках мемебер... т.е. чувак регстрируется на 1-ой конфе, и после регистрации, файл с его инфой корируется в остальные паки на других доменах
ТАКОЕ ВОЗМОЖНО?
 
Добавлено
И БУДЕТ ЛИ ВООБЩЕ ПОСЛЕ ЭТОГО РАБОТАТЬ КОНФЫ ТАКИМ ВОТ ОБРАЗОМ...

Всего записей: 36 | Зарегистр. 08-03-2004 | Отправлено: 19:27 31-03-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
anami city

Цитата:
а нельзя ли на кадой конференции(каждого поддомена), сделать копию имен пользователей и разместить их в других папках мемебер... т.е. чувак регстрируется на 1-ой конфе, и после регистрации, файл с его инфой корируется в остальные паки на других доменах  

 
Лучше вообще сделать одну папку для все доменов. Такое возможно.
 

Цитата:
И БУДЕТ ЛИ ВООБЩЕ ПОСЛЕ ЭТОГО РАБОТАТЬ КОНФЫ ТАКИМ ВОТ ОБРАЗОМ...

 
Вот и помотрим. Теоретически можно добиться работы, практически - ты первый, кто такое делает.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 22:49 31-03-2004
anami city



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
было бы неплозо написать статью вам так сказать для будущего поколения, по этой теме
был бы признателен...

Всего записей: 36 | Зарегистр. 08-03-2004 | Отправлено: 20:21 01-04-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
anami city

Цитата:
было бы неплозо написать статью вам

 
Слишком узкоспецифическая задача - кроме тебя за три года никому не понадобилась. Есть гораздо более широкие задачи, ждущие, когда по ним статьи напишутся  
 
Алгоритм я тебе распилала, ты бы попробовал, если  когда получится, и написал бы статью для будущего поколения

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 13:03 03-04-2004
anami city



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Попытаюсь вновь объяснить проблему яснее:
 
У меня на локалке 3 папки:
 
           • Site.ru
              o   Здесь располагается Index.htm
 
           • Host.site.ru (1)
               o www
                              &#61607; ikonboard (картинки)
               o cgi
                              &#61607; ikonboard
 
           • Music.site.ru (2)
               o www
                              &#61607; ikonboard (картинки)
               o cgi
                              &#61607; ikonboard
 
           • Kino.site.ru ()3
               o www
                              &#61607; ikonboard (картинки)
               o cgi
                              &#61607; ikonboard
 
 
В доменах 1, 2, 3 располагаются вполне стандартные комплекты IB. На стр. индекс.хтм хочу расположить кнопки «вход», «регистрация». Я хочу , чтобы пользователь нажав на вход мог спокойно войти, получить доступ к конференциям (1, 2, 3), без необходимости авторизироваться на каждой конференции отдельно. А нажав на регистрацию получить возможность зарегистрироваться с доступом к конфам, без необходимости регистрироваться на каждом.
Было бы, наверное уместно создать свою собственную форму для регистрации, который бы записывал файлы  

Всего записей: 36 | Зарегистр. 08-03-2004 | Отправлено: 11:52 09-04-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
anami city
 
Ишь какой хитрый. Одно дело единая регистрация, а другое дело единый вход.  
Ты знаешь, что такое куки (cookies)? Это информация, которая записывается на машине пользователя удаленным сервером, при чем эта информация разная для разных доменов. Более того, если ты войдешь на этот самый форум по адресу http://forum.ru-board.com/ - куки будут одни, а если по адресу http://www.forum.ru-board.com/, то куки будут другие, и с этим ничего не поделаешь - технология такая. То есть придется твоим пользователям логиниться на каждой конференции отдельно.
 
Так что про это:

Цитата:
 без необходимости авторизироваться на каждой конференции отдельно.  

забудь.
 

Цитата:
А нажав на регистрацию получить возможность зарегистрироваться с доступом к конфам, без необходимости регистрироваться на каждом.  

 
А про это я уже ответила выше.  
 
Можно даже один для всех поддоменов register.cgi, лежащий  

Цитата:
 Site.ru  
              o   Здесь располагается Index.htm  

site.ru/cgi-bin/register.cgi
Отдельная (общая) папка пользователей, лежащая:
site.ru/cgi-bin/members/
 
Только логиниться на каждой конференции придется отдельно.
 
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 16:55 09-04-2004
anami city



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ура! все сделал, и даже оптимизировал код, ну, просто, летает....
 
Получилась конфэтка....
 
Но тута , однака, явилась мнэ еще одна развратная мысль!!!!!!!!!!!!
 
Теперь хачу разместить поля регистрации на отдельный хтмл страницу, ну типа, как под свой дизайн расположить register.cgi. А как сделать, ясно, дело не врубаюся, вот и пишу вам запрос... Помогите, буду признателен....
 
По поводу написания статьи, быть модет, после того как я размещу свой сайт в интренете я напишу статью, эт произойдет где=то к сентябрю....

Всего записей: 36 | Зарегистр. 08-03-2004 | Отправлено: 19:29 23-04-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
anami city

Цитата:
Ура! все сделал,

 
Так расскажи, как.
 

Цитата:
Теперь хачу разместить поля регистрации на отдельный хтмл страницу, ну типа, как под свой дизайн расположить register.cgi.  

 
Это можно, когда ты расскажешь,как реализовал, а то непонятно, что ты за подпрограммы вызываешь в кажом случае.
 
А в целом просто - пишешь поля текстовые, возьми код из register.cgi, например:
 
<form action="скрип_что_будет_обрабатывать" method="post">
<input type=text size=20 maxlength="20" name="inmembername"><br>
<input type=text size=20 name="emailaddress">
 
и т.д.
 
 
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 20:36 23-04-2004
anami city



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
формы-то рахзместить не проблема, но ведь форма еще должна создать файл в папку members.....
 

Всего записей: 36 | Зарегистр. 08-03-2004 | Отправлено: 12:09 24-04-2004
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
anami city

Цитата:
формы-то рахзместить не проблема, но ведь форма еще должна создать файл в папку members.....  

 
А я тебе про что говорю - расскажи, как ты реализовал то единую регистрацию, одна у тебя папка мемберс или сколько и т.д..

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 18:40 24-04-2004
Marilda

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
anami city
Что мемберу пишется в поля lastpostdetails и numberofposts - ластпост и число постов? По всем форумам собирается?

Всего записей: 381 | Зарегистр. 24-10-2002 | Отправлено: 01:34 25-04-2004
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » Единая регистрация: общие пользователи для разных форумов


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru