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

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

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

[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 раз.
Изображение
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16948
Стаж: 18 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 549 раз
Поблагодарили: 1701 раз

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

Сообщение rxu »

Kacap
Регистрировать на сайте, потом выбирать данные из таблицы и заносить в другую таблицу - это по-нашему.
Так не получится. Надо брать данные из HTML формы и обрабатывать для регистрации на сайте и на форуме отдельно.
includes/functions_user.php function user_add($user_row, $cp_data = false) добавляет пользователя phpBB.
Использование можно посмотреть в includes/ucp/ucp_register.php, скажем, начиная со строки $user_type = USER_NORMAL; и до $user_id = user_add($user_row, $cp_data);. Если дополнительные поля профиля не используются, можно вызвать $user_id = user_add($user_row);.
Получение данных из формы здесь:

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

		$data = array(
			'username'			=> utf8_normalize_nfc(request_var('username', '', true)),
			'new_password'		=> request_var('new_password', '', true),
			'password_confirm'	=> request_var('password_confirm', '', true),
			'email'				=> strtolower(request_var('email', '')),
			'email_confirm'		=> strtolower(request_var('email_confirm', '')),
			'lang'				=> basename(request_var('lang', $user->lang_name)),
			'tz'				=> request_var('tz', (float) $timezone),
		);
Изображение
Kacap
phpBB 1.2.0
Сообщения: 14
Стаж: 14 лет
Откуда: Odessa

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

Сообщение Kacap »

Спасибо, будем пробовать
Termin
phpBB 1.2.0
Сообщения: 13
Стаж: 13 лет 11 месяцев

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

Сообщение Termin »

rxu писал(а):Remember that header() must be called before any actual output is sent, either by normal HTML tags, blank lines in a file, or from PHP. It is a very common error to read code with include(), or require(), functions, or another file access function, and have spaces or empty lines that are output before header() is called. The same problem exists when using a single PHP/HTML file.
Не реально сделать шаблон .php для этого движка, как вариант переходить на другой движок. Легче конференцию поменять.
phpBB 3.06
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16948
Стаж: 18 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 549 раз
Поблагодарили: 1701 раз

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

Сообщение rxu »

Termin
Приведенная цитата - это ограничение PHP, а не phpBB.
На любом PHP-"движке" будет одно и то же. Просто напишите правильный скрипт.
Изображение
Termin
phpBB 1.2.0
Сообщения: 13
Стаж: 13 лет 11 месяцев

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

Сообщение Termin »

rxu писал(а):Приведенная цитата - это ограничение PHP, а не phpBB.
В том то и дело что после удаления строк в phpBB всё отображается нормально (кроме того что LOGIN пишет вместо входа).
Удалил строки:
Из login.php

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

// Send headers
header('Content-type: text/html; charset=UTF-8');
header('Cache-Control: private, no-cache="set-cookie"');
header('Expires: 0');
header('Pragma: no-cache')
;
Из phpBB includes/session.php

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

header('Set-Cookie: ' . $name_data . (($cookietime) ? '; expires=' . $expire : '') . '; path=' . $config['cookie_path'] . $domain . ((!$config['cookie_secure']) ? '' : '; secure') . '; HttpOnly', false);
Чем это грозит не знаю?
phpBB 3.06
Аватара пользователя
Evgesh
phpBB 2.0.3
Сообщения: 360
Стаж: 13 лет 11 месяцев
Откуда: Красноярский край,Богучаны
Благодарил (а): 4 раза
Поблагодарили: 1 раз

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

Сообщение Evgesh »

может кто подскажет как вывести эту интеграцию на modx rev? подсказку бы..... спасибо заранее
Аватара пользователя
Evgesh
phpBB 2.0.3
Сообщения: 360
Стаж: 13 лет 11 месяцев
Откуда: Красноярский край,Богучаны
Благодарил (а): 4 раза
Поблагодарили: 1 раз

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

Сообщение Evgesh »

помогите разобраться!куда ложить login.php и как его на страницу вывести?
Аватара пользователя
владимир1983
phpBB 3.2.6
Сообщения: 5954
Стаж: 15 лет
Откуда: Сергиев Посад
Благодарил (а): 295 раз
Поблагодарили: 287 раз

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

Сообщение владимир1983 »

Поищите решение интеграции тут http://modxcms.com/forums/index.php/board,42.0.html.
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)
Аватара пользователя
Evgesh
phpBB 2.0.3
Сообщения: 360
Стаж: 13 лет 11 месяцев
Откуда: Красноярский край,Богучаны
Благодарил (а): 4 раза
Поблагодарили: 1 раз

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

Сообщение Evgesh »

владимир1983 писал(а):Поищите решение интеграции тут http://modxcms.com/forums/index.php/board,42.0.html.
это первое что я и сделал))))после ток к вам обратился
Evanna
phpBB 1.0.0
Сообщения: 2
Стаж: 13 лет 10 месяцев

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

Сообщение Evanna »

Здравствуйте! Спасибо большое за вашу программку - очень помогла!
Проблема в следующем - если я подключаю файл login.php из рhp файла - проблем нет, все работает (использую include)
Но у меня на сайте есть т.н. лента новостей и отдельные новости хранятся в HTML файлах которые создаются программно как только пользователь в форме разместит новость (для этого мне и нужна была интеграция - для размещения новостей на сайте).
так вот подскажите как можно в эти HTML файлы вставить Ваш блок с логином пользователей? никакие <!--#include virtual="/login.php" --> не помогают.
надеюсь понятно написала :)
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16948
Стаж: 18 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 549 раз
Поблагодарили: 1701 раз

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

Сообщение rxu »

Evanna
Вставлять так же, как и обычно - копировать/вставить ;)
Только пути к папке phpBB правильно пропишите.
Изображение
Evanna
phpBB 1.0.0
Сообщения: 2
Стаж: 13 лет 10 месяцев

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

Сообщение Evanna »

приведу пример: два файла один php, другой html - оба находятся в одной папке - в корне, там же где и login.php.
php:

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

<?php  
include('/Header.php');
include('php/top_left_menu.php');
include('login.php'); 	
include('shablon/Podval.html');	
?>
и HTML

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

<!--#include file="Header.php" --> 
<!--#include virtual="/php/top_left_menu.php" --> 
<!--#include file="login.php" -->
<!--#include virtual="/shablon/Podval.html" -->
php файл работает верно, HTML в том месте где должен отображаться содержимое login.php пишет
Fatal error: Call to undefined function get_username_string() in Z:\home\Boy_or_girl.ru\www\login.php on line 19
то есть выдает ошибку на эту строку:
echo 'Hello, ' . get_username_string('full', $user->data['user_id'], $user->data['username'], $user->data['user_colour']);
думаю он не подключил какой-то файл что для меня не понятно потому, что подключаемые файлы в первом и втором варианте одинаковы, и находятся в одинаковом месте.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16948
Стаж: 18 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 549 раз
Поблагодарили: 1701 раз

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

Сообщение rxu »

Evanna
Какой путь к скриптам phpBB указан в подключаемом файле login.php?
Изображение
kocher356
phpBB 1.0.0
Сообщения: 4
Стаж: 14 лет

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

Сообщение kocher356 »

Здравствуйте!
Прочитал всю тему так и н понял как исправить эти ошибки:

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

[phpBB Debug] PHP Notice: in file C:/wam/www/psfs/login.php on line 52: Cannot modify header information - headers already sent by (output started at C:/wam/www/psfs/index.php:65)
[phpBB Debug] PHP Notice: in file C:/wam/www/psfs/login.php on line 54: Cannot modify header information - headers already sent by (output started at C:/wam/www/psfs/index.php:65)
[phpBB Debug] PHP Notice: in file C:/wam/www/psfs/login.php on line 55: Cannot modify header information - headers already sent by (output started at C:/wam/www/psfs/index.php:65)
[phpBB Debug] PHP Notice: in file C:/wam/www/psfs/login.php on line 56: Cannot modify header information - headers already sent by (output started at C:/wam/www/psfs/index.php:65)
Вот сами строчки:

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

header('Content-type: text/html; charset=UTF-8');

header('Cache-Control: private, no-cache="set-cookie"');
header('Expires: 0');
header('Pragma: no-cache');
Данный файл присоединил к шаблону на стартовую страницу index.php, а также подскажите пожалуйста как можно сделать обратное перенаправления на index.php

Вот сам файл
index.zip
index.php.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Айдар
Former team member
Сообщения: 1687
Стаж: 14 лет 4 месяца
Откуда: KZN
Благодарил (а): 4 раза
Поблагодарили: 11 раз

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

Сообщение Айдар »

In Web We Trust
Перенесено из форума FAQ (phpBB 3.0.x) в форум FAQ 28.09.2016 15:02 модератором rxu

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