Подключить авторегу юзеров на форум PHPBB3 при реге на сайте

AlexThunder
На сайте с 07.08.2006
Offline
112
879

Всем привет.

Юзал поиск, но так и не нашел.

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

Есть опыт у кого?

Бесплатные лендинги (/ru/forum/916903). Премиум лендинг за 7т.р. (http://landing.chopochom.com/?utm_source=searchengines.guru&utm_medium=forum&utm_term=подпись&utm_content=премиум+лендинг+за+7тр&utm_campaign=landing) Контекстная реклама без границ (/ru/forum/893946)
SeoMotion
На сайте с 03.09.2007
Offline
227
#1

Больше исходных данных предоставьте (движок сайта и т.д.)

SEO Secrets, Tips & Tricks - https://t.me/seorigin
B
На сайте с 23.10.2006
Offline
170
#2

Если капчи на авторизации нет (у форума) то ничего сложного.

1.Регистрация

При регистрации нового пользователя на сайте, нужно продублировать SQL запросом его данные для логина/пароля в БД форума.

2.Авторизация

Модифицируем форму авторизации, чтобы она авторизационные данные отправляла не только скрипту авторизации сайта, но и форума.

Если не справитесь - обращайтесь.

PS.

Такой фишки не делал, но подозреваю что проблем быть не должно.

AlexThunder
На сайте с 07.08.2006
Offline
112
#3

Двиг - самописный, т.е. со стороны двига в общем-то проблемы нет. Больше думаю о PHPBB3, то есть насколько он это приемлет. Опять же - при регистрации на форуме включен мод с вводом проверочного слова. То есть, капчу нужно дублировать + есть еще своя каптча на сайте.

Думал, может кто крутил уже такое и есть выложенное в сети хотя бы частично техописание.

Z
На сайте с 14.10.2008
Offline
87
#4

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

B
На сайте с 23.10.2006
Offline
170
#5
AlexThunder:
Опять же - при регистрации на форуме включен мод с вводом проверочного слова. То есть, капчу нужно дублировать + есть еще своя каптча на сайте.

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

wdsg
На сайте с 09.02.2009
Offline
31
#6

Вот массив значений всех полей таблицы `phpbb_users` для нового аккаунта юзера:

	$sql_ary = array(
'username' => $user_row['username'],
'username_clean' => $username_clean,
'user_password' => (isset($user_row['user_password'])) ? $user_row['user_password'] : '',
'user_pass_convert' => 0,
'user_email' => strtolower($user_row['user_email']),
'user_email_hash' => crc32(strtolower($user_row['user_email'])) . strlen($user_row['user_email']),
'group_id' => $user_row['group_id'],
'user_type' => $user_row['user_type'],
'user_permissions' => '',
'user_timezone' => $config['board_timezone'],
'user_dateformat' => $config['default_dateformat'],
'user_lang' => $config['default_lang'],
'user_style' => (int) $config['default_style'],
'user_actkey' => '',
'user_ip' => '',
'user_regdate' => time(),
'user_passchg' => time(),
'user_options' => 895,
'user_inactive_reason' => 0,
'user_inactive_time' => 0,
'user_lastmark' => time(),
'user_lastvisit' => 0,
'user_lastpost_time' => 0,
'user_lastpage' => '',
'user_posts' => 0,
'user_dst' => (int) $config['board_dst'],
'user_colour' => '',
'user_occ' => '',
'user_interests' => '',
'user_avatar' => '',
'user_avatar_type' => 0,
'user_avatar_width' => 0,
'user_avatar_height' => 0,
'user_new_privmsg' => 0,
'user_unread_privmsg' => 0,
'user_last_privmsg' => 0,
'user_message_rules' => 0,
'user_full_folder' => PRIVMSGS_NO_BOX,
'user_emailtime' => 0,

'user_notify' => 0,
'user_notify_pm' => 1,
'user_notify_type' => NOTIFY_EMAIL,
'user_allow_pm' => 1,
'user_allow_viewonline' => 1,
'user_allow_viewemail' => 1,
'user_allow_massemail' => 1,

'user_sig' => '',
'user_sig_bbcode_uid' => '',
'user_sig_bbcode_bitfield' => '',

'user_form_salt' => unique_id(),
);

Готовим значения и делаем INSERT в `phpbb_users`. Массив $config, содержащий переменные конфигурации, можно заинклудить (кажется, в config.php задаётся) или просто подставить нужные значения. Функция unique_id() описана в includes/functions.php. Откуда берётся $user_row, я думаю, понятно. Вроде, не должно проблем возникнуть. После этого, для того, чтобы связать юзера с определённой группой, берём lastInsertId и делаем в `phpbb_user_group` INSERT такого вида:

INSERT INTO `phpbb_user_group` (`user_id`, `group_id`, `user_pending`) VALUES (id нового юзера, id группы, 0);

Примерно таким образом можно зарегистрировать новую учётку в phpBB3.

Проектирование и разработка сложных IT-систем. Вожусь с проблемными задачами.
AlexThunder
На сайте с 07.08.2006
Offline
112
#7

wdsg, bimcom, zenter, ага, прикинул. Спс.

По ходу работы постараюсь сформировать инструкцию по реализации.

sirota77
На сайте с 08.09.2008
Offline
161
#8
bimcom:
Если капчи на авторизации нет (у форума) то ничего сложного.
1.Регистрация
При регистрации нового пользователя на сайте, нужно продублировать SQL запросом его данные для логина/пароля в БД форума.
2.Авторизация
Модифицируем форму авторизации, чтобы она авторизационные данные отправляла не только скрипту авторизации сайта, но и форума.
Если не справитесь - обращайтесь.
PS.
Такой фишки не делал, но подозреваю что проблем быть не должно.

так работать ничего не будет, поверьте наслово

api phpbb предусматривает возможность интеграции

могу вам помочь (не бесплатно)

FladeX
На сайте с 07.11.2008
Offline
163
#9

Кроме того, пароль в phpBB хэшируется не по md5(), а встроенной функцией.

Услуги посредника на бирже контента: информационные статьи 40₽/1000, «продающие» тексты 50₽/1000. Пишите в личку. Помогаю правильно переехать на https (/ru/forum/973447). Подписывайтесь на мой канал в телеграм: https://t.me/fladex (https://t.me/fladex).

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий