Как я могу интегрировать логины пользователей с моего сайта в phpBB?

StackOverflow https://stackoverflow.com/questions/279655

  •  07-07-2019
  •  | 
  •  

Вопрос

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

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

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

Все руководства и сообщения на форумах, которые я смог найти, подразумевали использование phpBB в качестве основного.Я не нашел ничего, что можно было бы сделать наоборот.

Я предполагаю, что единственный возможный способ решить эту проблему — относительно синхронизировать обе таблицы.

Теперь, при условии, что я могу синхронизировать обе таблицы пользователей, как лучше всего интегрировать оба сайта, сохранив таблицу входа и пользователей моего сайта в качестве «основных»?
Кроме того, есть ли что-то особенное, что мне следует учитывать при создании записей в таблице пользователей phpBB?Или это относительно просто выяснить?В какие таблицы мне следует писать, если их несколько?

Это было полезно?

Решение

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

http://wiki.phpbb.com/Authentication_plugins

Сейчас я работаю над тем, где phpBB является " вторичным " система, и она идет довольно хорошо.

Другие советы

Я только что поработал над этой задачей сегодня, после того, как в ходе некоторых исследований был реализован плагин аутентификации . Вот хороший пример. Как заставить phpBB принимать сеансы Django

Раньше я интегрировал phpBB с сайтом, однако, как вы сказали, я использовал таблицу входа в систему/пользователей phpBB в качестве основной.Поскольку phpBB является довольно продвинутым программным обеспечением для форумов, полная смена пользователя и системы входа в систему займет довольно много времени.

Когда мне пришлось использовать логин сайта в качестве основного, я использовал ПанББ.Модифицировать PunBB было намного проще.

Если вам абсолютно необходимо использовать свой собственный логин в качестве основного и phpBB, то я согласен с вами в том, что самый простой способ — синхронизировать таблицы и вызывать оба сценария входа, когда кто-то входит в систему.

Когда вы вставляете данные в phpBB, таблица пользователей довольно проста.Каждая запись содержит основную информацию о пользователе, и если у вас есть настраиваемые поля для профилей пользователей, они переходят в profile_fields и profile_fields_data столы.

Одна непростая вещь заключается в том, как phpBB шифрует пароли пользователей.Я думаю, вам нужно использовать функцию phpBB под названием phpbb_hash($password) сделать это.Это объявлено в файлеphpbb/includes/functions.php

Код входа в phpBB см. в файле funciton login_box. phpbb/includes/functions.php

Вы можете использовать ниже для входа в phpBB:

$result=$auth->login($username, $password);

if ($result['status'] == LOGIN_SUCCESS) {

  echo "You're logged in";

} else {

  echo $user->lang[$result['error_msg']];

}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top