Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

[FAQ] Интеграция входа на конференцию phpBB с сайтом

Темы по наиболее часто задаваемым вопросам без привязки к версии phpBB. Читать в первую очередь!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB 3.1.x/3.2.x/3.3.x | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16371
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1745 раз

[FAQ] Интеграция входа на конференцию phpBB с сайтом

Сообщение rxu »

Ниже приведен пример скрипта с интегрированной формой входа на конференцию (общего вида).
В приведённом примере папка, в которой находится скрипт, находится на один уровень выше папки конференции. Файлы конференции находятся в папке phpBB3 относительно скрипта.

По коду скрипта имеются пояснительные комментарии (на английском языке).

Вопросы принимаются в этой теме.

Версия 1.1.0 с интегрированным списком онлайн и легендой групп здесь.
Версия 1.2.0 с аватарой здесь.

Версия 2.0.1 для phpBB 3.2/3.3 здесь.

login_1.0.5.zip
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Последний раз редактировалось rxu 22.05.2020 8:37, всего редактировалось 6 раз.
Изображение
Аватара пользователя
Oleg NT
Former team member
Сообщения: 450
Стаж: 18 лет 3 месяца
Откуда: Нижний Тагил
Поблагодарили: 2 раза

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение Oleg NT »

Xandir писал(а):Только вот что-то ссылки не генерируются той функцией
Вероятно, надо подключить файл с объявлением этой функции
Аватара пользователя
zmeeed
phpBB 1.0.0
Сообщения: 1
Стаж: 14 лет 10 месяцев

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение zmeeed »

У меня такая картина.
phpBB-3.0.5 без модов.
при использовании скрипта всё проходит хорошо, но когда разлогиниваешься sid можно всё еще использовать для блуждания и постинга по конференции.

Добавлено спустя 4 минуты 7 секунд:
Надеясь на лучшее, думай о худшем, но живи сущим!
Аватара пользователя
lindim2009
phpBB 1.0.0
Сообщения: 6
Стаж: 14 лет 10 месяцев

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение lindim2009 »

Добрый день, помогите уважаемые гуру, такая проблемка, у меня сайт http://www.bezrulya.com.ua нужно чтобы в конце регистрации на странице (http://bezrulya.com.ua/forum/ucp.php?mode=register) изменить слова (вернутся на главную страницу) на перейти на сайт, и добавить слово перейти на форум, типа чтобы если пользователь регистрируется на сайте он мог вернутся на сайт, а если регистрируется на форуме то перейти на форум.

Зарание благодарен Дмитрий.
Аватара пользователя
lindim2009
phpBB 1.0.0
Сообщения: 6
Стаж: 14 лет 10 месяцев

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение lindim2009 »

мне так никто и неответит :(
Аватара пользователя
crash
Former team member
Сообщения: 6517
Стаж: 19 лет 9 месяцев
Откуда: Бердск

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение crash »

не понятно что вы хотите изменить и где. Если текст соглашения, то про это говорили уже ни один раз
Как правильно задавать вопросы
Для особо одаренных: поиск - это есть круто.
FAQ v.2 | FAQ v.3 | Шаблон запроса
Аватара пользователя
AllFuns
phpBB 1.4.0
Сообщения: 39
Стаж: 14 лет 10 месяцев
Откуда: Иваново

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение AllFuns »

Скажите пожалуйста,я скачал вложение login_1.2.0.zip где есть функция вывода аватарки.

Код: Выделить всё

echo '<br />' . get_user_avatar($user->data['user_avatar'], $user->data['user_avatar_type'], $user->data['user_avatar_width'], $user->data['user_avatar_height']);
Проблема в том,что когда я это установил у меня вылезает ошибка мол нет такой функции.Что можно сделать в такой ситуации?

Код: Выделить всё

Fatal error: Call to undefined function get_user_avatar() in /home/allfuns/data/www/allfuns.ru/include/text_align_right.php on line 20
Версия форума 3.0.4
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16371
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1745 раз

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение rxu »

А откуда ей взяться в вашем скрипте text_align_right.php? Для этого надо сделать Include файла, в котором объявлена эта функция, но это основы PHP, и выходит за рамки темы. Смотрите login скрипт, он и сделан для примера, как шаблон любого такого скрипта, а не для прямого использования.
Изображение
Аватара пользователя
AllFuns
phpBB 1.4.0
Сообщения: 39
Стаж: 14 лет 10 месяцев
Откуда: Иваново

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение AllFuns »

Дело м,что я просто на свою страничку вставил из этого скрипта login.php,я вообще то думал,что если там идет обработка через эту функцию,то она должна же где то быть.Иначе для чего тогда эта строчка в скрипте сделана,если функции такой не существует?
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16371
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1745 раз

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение rxu »

AllFuns
Занимаясь простым копипастингом, и не имея представления, что, зачем и куда вы копируете и вставляете - вы не заставите работать ни одну программу :)
Изображение
Аватара пользователя
AllFuns
phpBB 1.4.0
Сообщения: 39
Стаж: 14 лет 10 месяцев
Откуда: Иваново

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение AllFuns »

Да я пишу программы сам.И не просто копирую все,но в данном скрипте,я имею ввиду phpBB,я не могу найти что и где находится.
Например мне не понятно зачем там идет обработка функцией,если аватарка выводится

Код: Выделить всё

echo"<img src=\"".$user->data["user_avatar"]."\">";
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16371
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1745 раз

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение rxu »

AllFuns писал(а):я имею ввиду phpBB,я не могу найти что и где находится
В большинстве случаев достаточно включить в свой скрипт common.php из корня, в который включены многие нужные файлы с объявленями функций из папки /includes.
Изображение
bonez
phpBB 1.0.0
Сообщения: 2
Стаж: 14 лет 9 месяцев

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение bonez »

Приветствую!

Ситуация следующая. Есть сайт с собственной базой MySQL, на котором стояла phpbb2 в WIN1251. Проагрейдил до phpBB3. Все перенеслось нормально, приблем с кодировкой нет, отдельно от сайта форум работает нормально. Раньше на сайте была авторицация через phpBB2, переделал по аналогии с login.php авторизацию, но начались глюки - сайт через раз отображается то нормально, то каракули. Т.к. сайт (около 400 страниц) работает в WIN1251 (в meta, но пробовал ставить <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> - тоже самое), и Mysql-база в 1251, то переводить все файлы в UTF-8 мягко говоря, трудоемко.

Насколько я понимаю, происходит такое из-за того, что сначала common.php выдает header с UTF-8, а потом сам сайт выдает 1251, которая походу просто игнорируется (хотя я ставил в заголовке страниц мета UTF-8, все равно). Видимо автодетект броузера через раз воспринимает страницу то в UTF, то в 1251. Как правильно решить эту проблему?

Сейчас структура примерно такая

Код: Выделить всё

<?php
define('IN_PHPBB', true);
PHPBB_ROOT_PATH : '/home/test/forum/';
$phpEx = "php";
include($phpbb_root_path . 'common.' . $phpEx);
$user->session_begin();
$auth->acl($user->data);
$user->setup('ucp');
?>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>
<body>
ТЕКСТ САЙТА
</body>
</html>
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16371
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1745 раз

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение rxu »

common.php вообще ничего никуда не выдает. Хедер прописан в функции page_header, но она у вас не вызывается.
А вот инициализации $phpbb_root_path я у вас вообще не вижу.
Изображение
bonez
phpBB 1.0.0
Сообщения: 2
Стаж: 14 лет 9 месяцев

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение bonez »

Инициализация есть, просто когда код сокращал, случайно вырезал строку
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : '/home/test/forum/';
Логин и логаут работают, все авторизируется нормально.

Впрочем, когда детально стал смотреть, оказалось что только данные из MySQL перекодируются случайным образом. Видимо, phpbb меняет локаль при обращении к БД и последующие обращения в скрипте неверно выдают результат.
pechs
phpBB 1.0.0
Сообщения: 3
Стаж: 14 лет 8 месяцев

Re: [FAQ RC] Интеграция входа на конференцию с сайтом

Сообщение pechs »

Доброе утро!
Быть может, подобный вопрос уже был.

Есть сайт на котором авторизация и идентификация пользователя управляется классом:

Код: Выделить всё

class fcUser extends bcDB{
  
  function __construct(){
    parent::__construct();
    if (empty($_SESSION['_User']['Low']))
      $_SESSION['_User']['Low'] = '0';
  }

  final public function UserLogin($sLogin, $sPass){
    if (empty($sLogin)) bcObject::Init("bcMessage")->AddError("Не указано имя пользователя");
    if (empty($sPass))  bcObject::Init("bcMessage")->AddError("Не указан пароль");
    if (bcObject::Init("bcMessage")->noError() === TRUE){
      $_User = parent::dbQuery("SELECT nId, nGroupId, sName, sPass  FROM " . sDbPx . "users WHERE sName = '{$sLogin}'");
      if (empty($_User[0]["sName"])) 
        bcObject::Init("bcMessage")->AddError("Пользователь <b>{$sLogin}</b> не найден");
      if(bcObject::Init("bcMessage")->noError() === TRUE && HashData($sLogin, $sPass) != $_User[0]["sPass"])
        bcObject::Init("bcMessage")->AddError("Неверная пара Логин/Пароль для пользователя {$sLogin}");
      if (bcObject::Init("bcMessage")->noError() === TRUE){
        $_SESSION["_User"]['Name'] = $sLogin;
        $_SESSION["_User"]['Low'] = $_User[0]["nGroupId"];
        $_SESSION["_User"]['nId'] = $_User[0]["nId"];
      }
    }
    return $this;
  }
  
  final public function FormLogin(){
    $sShablonTpl = (!empty($_SESSION["_User"]['Name']) && $_SESSION["_User"]['Name'] != 'guest')?"LogOn":"LogOff";
    return bcObject::Init("bcHTML")->getShablon($sShablonTpl)->getHTML($this->_Replace)->sHTML;
  }
  
   final public function UserLogout(){
    unset($_SESSION['_User']);
    $_SESSION['_User']['Low'] = '0';
    return $this;
  }
}
управление происходит через сессии
хотелось бы узнать о системе идентификации пользователя phpBB и можно ли насильственно через куки указывать форуму на "авторизованность" пользователя?
так же возникает вопрос о тем, обращается ли форум к таблице пользователей при добавлении сообщений, или же информацию о пользователе он черпает из кук?

не хотелось бы переписывать систему шифрования паролей, для интеграции с таблицей форума
Перенесено из форума FAQ (phpBB 3.0.x) в форум FAQ 28.09.2016 15:02 модератором rxu

Вернуться в «FAQ»