Уважаемые пользователи!
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
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

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

Сообщение rxu »

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

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

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

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

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

login_1.0.5.zip
(1.48 КБ) 4425 скачиваний
Последний раз редактировалось rxu 22.05.2020 8:37, всего редактировалось 6 раз.
Изображение
stsalv
phpBB 1.0.0
Сообщения: 2
Стаж: 8 лет 2 месяца

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

Сообщение stsalv »

Подскажите, внедрил скрипт себе на первую страницу, появились поля для ввода логина и пароля, но когда нажимаю на кнопку "Вход" форум и перехожу на ".../forum/login.php", то он выдает ошибку: No route found for "POST /login.php"
где я что не докрутил?
Версия форума 3.1.7-PL1
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

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

Сообщение rxu »

Как конкретно выглядит код на сайте? И где находится login.php?
Изображение
stsalv
phpBB 1.0.0
Сообщения: 2
Стаж: 8 лет 2 месяца

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

Сообщение stsalv »

Спасибо!
Разобрался, неправильно был настроен протокол в настройках сервера :), сам ступил, слеши не в ту сторону поставил.

Еще один вопрос.
Есть основной сайт к которому прикручен форум, как сделать так, чтобы после входа на форум или первой регистрации возвращаться на главную страницу сайта? Вопрос вроде бы простой и ситуация такая у каждого второго, но никак не могу это побороть.
при изменении форумных файлов php нужна какая ни будь перекомпиляция?
(перекомпиляцию шаблонов включал, но или я не там правил или она не работает.. в общем пока никак не могу это поправить)
Аватара пользователя
aurum79
phpBB 1.0.0
Сообщения: 2
Стаж: 7 лет 9 месяцев
Откуда: Тверь
Поблагодарили: 1 раз
Контактная информация:

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

Сообщение aurum79 »

Друзья, боюсь не в тему, но все таки спрошу. Есть сайт-игрушка с своей БД, есть кнопка перехода на форум и форум на phpBB 3.1, желаю сделать так чтобы при нажатии кнопки перехода на форум осуществлялся переход на форум, при этом передавался в форму логин, пароль и почта, на форуме соответственно проходит проверка есть ли такой товарищ в БД, если есть, то стартуем сессию и логиним сразу и редиректим на форум, если нет, то создаем юзера и опять таки логиним его, буду благодарен за любой намек в какую сторону копать
Аватара пользователя
aurum79
phpBB 1.0.0
Сообщения: 2
Стаж: 7 лет 9 месяцев
Откуда: Тверь
Поблагодарили: 1 раз
Контактная информация:

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

Сообщение aurum79 »

Спасибо друзья, сделал сам, всеоказалось довольно таки просто на самом деле

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

		global $CONF,$LNG,$USER;
		
		$mail 	= $GLOBALS['DATABASE']->countquery("SELECT `username` FROM `forum_rud`.`phpbb_users`  WHERE `user_email` = '".$USER['email']."';");
		if($mail !="")
		{
			//если мыло такое уже зарегано, то редиректим на форум
		$forum = $CONF['forum_url'];	
	}else{
// если же подобного мыла нет, то создаем нового и опять таки редиректим на форум
$hemail = crc32(strtolower($USER['email']) . strlen($USER['email']));
	
	 $GLOBALS['DATABASE']->query("INSERT INTO `forum_rud`.`phpbb_users` SET
	  user_id  = '".$USER['id']."',
	  username = '".$USER['username']."',
	  username_clean ='".$USER['username']."',
	  user_email ='".$USER['email']."',
	  user_email_hash ='".$hemail."', 
	  user_password ='".$USER['password']."', 
	  user_regdate ='".TIMESTAMP."', 
	  user_form_salt ='".unique_id()."', 
	  user_permissions ='',
	  user_sig ='',
	  group_id ='2',  
	  user_ip ='".$USER['ip_at_reg']."';");
	
	$GLOBALS['DATABASE']->query("insert into `forum_rud`.`phpbb_user_group`
                           (`user_id`, `user_pending`, `group_id`)
                            values (".$USER['id'].", 0, 2)");


$GLOBALS['DATABASE']->query("update `forum_rud`.`phpbb_config` set `config_value`=`config_value`+1 where `config_name`='num_users'");

$GLOBALS['DATABASE']->query("update `forum_rud`.`phpbb_config` set `config_value`= ".$USER['id']." where `config_name`='newest_user_id'");
$GLOBALS['DATABASE']->query("update `forum_rud`.`phpbb_config` set `config_value`= ".$USER['username']." where `config_name`='newest_username'");
	
	
$forum = $CONF['forum_url'];}
просто как пример привожу, раз уж есть правило - справился с проблемой, расскажи как))
Перенесено из форума FAQ (phpBB 3.0.x) в форум FAQ 28.09.2016 15:02 модератором rxu

София Зарра
phpBB 1.2.0
Сообщения: 11
Стаж: 6 лет 10 месяцев

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

Сообщение София Зарра »

Ну, и я задам вопрос.

Собственно, пытаюсь сделать пока все на локалхосте. Взяла файл из первого сообщения, инклюдила его на первую страницу. Поправила разметку, чтобы красиво было (ну не суть важно).
Скриншот 25-05-2017 021213.jpg
Скриншот 25-05-2017 021213.jpg (10.25 КБ) 1257 просмотров
Затем я логинюсь, ввожу логин-пароль, все принимает, на форуме тоже авторизация проходит, но после входа (или после выхода) меня редиректит на непосредственно localhost/login.php, и выглядит это вот так
Скриншот 25-05-2017 021511.jpg
Скриншот 25-05-2017 021511.jpg (21.44 КБ) 1257 просмотров
Скриншот 25-05-2017 021937.jpg
Скриншот 25-05-2017 021937.jpg (11.12 КБ) 1257 просмотров
Кодировка не волнует, волнует другое - как сделать, чтобы оно меня редиректило обратно на главную?
Аватара пользователя
LONER
phpBB 3.0.0 RC1
Сообщения: 1486
Стаж: 8 лет 2 месяца
Благодарил (а): 164 раза
Поблагодарили: 247 раз

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

Сообщение LONER »

София Зарра, Правила, пункт: 2.5
рекомендуется использовать Шаблон запроса
Как минимум хотя бы узнать какая у Вас версия phpBB, другое тоже не помешает. В общем заполняем шаблон запроса. Простейший путь к скорейшему ответу - шаблон запроса
Правильно заданный вопрос и описание проблемы - 70% их решения...
София Зарра
phpBB 1.2.0
Сообщения: 11
Стаж: 6 лет 10 месяцев

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

Сообщение София Зарра »

Да, точно)))) Сорри, туплю...
Описание проблемы: редиректит не туда
Произведенные изменения, после которых начались неполадки: установила на гл. страницу сайта в HTML код через include форму авторизации
Версия phpBB: 3,1,10
Используемые стили: AnimeZone
Используемые моды/расширения: Последние темы JS
Версия PHP:: PHP Version 5.3.29
Используемая СУБД и её версия: MySQL
Ссылка на конференцию: localhost
Есть ли у вас тестовый аккаунт:
Использовался ли поиск для решения проблемы: да
Если да, то какие запросы вы использовали: редирект
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

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

Сообщение rxu »

вместо блока

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

	echo 'Hello, ' . get_username_string('full', $user->data['user_id'], $user->data['username'], $user->data['user_colour']);
	echo '<form method="post" action="login.php">';
	echo '	<input type="submit" name="logout" value="LOGOUT" />';
	echo '</form>';
сделайте

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

redirect(generate_board_url(true));
Последний раз редактировалось rxu 25.05.2017 9:15, всего редактировалось 1 раз.
Причина: Исправление инструкции.
Изображение
София Зарра
phpBB 1.2.0
Сообщения: 11
Стаж: 6 лет 10 месяцев

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

Сообщение София Зарра »

rxu писал(а): 25.05.2017 6:31добавьте
Добавила, выдало вот такое

Fatal error: Cannot redeclare phpbb_load_extensions_autoloaders() (previously declared in C:\WebServers\OpenServer\domains\localhost\forum\includes\functions.php:28) in C:\WebServers\OpenServer\domains\localhost\forum\includes\functions.php on line 52
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

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

Сообщение rxu »

София Зарра писал(а): 25.05.2017 8:14выдало вот такое
Сорри, ошибся. Эта добавка не требуется, так как уже имеется в common.php. Уберите.
Изображение
София Зарра
phpBB 1.2.0
Сообщения: 11
Стаж: 6 лет 10 месяцев

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

Сообщение София Зарра »

убрала, заменила, но теперь выдает

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

Warning: Cannot modify header information - headers already sent by (output started at C:\WebServers\OpenServer\domains\localhost\tpl\header.tpl:55) in C:\WebServers\OpenServer\domains\localhost\forum\includes\functions.php on line 2542
header.tpl - моя шапка начальной страницы сайта, на 55 строке он заканчивается))

И еще выдает:

Общая ошибка
Попытка перенаправления на потенциально опасный сайт.

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

BACKTRACE

FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/includes/functions.php
LINE: 2362
CALL: trigger_error()

FILE: C:/WebServers/OpenServer/domains/localhost/login.php
LINE: 68
CALL: redirect()

FILE: C:/WebServers/OpenServer/domains/localhost/tpl/index_body.tpl
LINE: 6
CALL: include('C:/WebServers/OpenServer/domains/localhost/login.php')

FILE: C:/WebServers/OpenServer/domains/localhost/index.html
LINE: 3
CALL: include('C:/WebServers/OpenServer/domains/localhost/tpl/index_body.tpl')
index_body.tpl - это середина от моей начальной страницы сайта
Последний раз редактировалось LONER 25.05.2017 10:44, всего редактировалось 1 раз.
Причина: BBcode
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

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

Сообщение rxu »

София Зарра писал(а): 25.05.2017 10:37Попытка перенаправления на потенциально опасный сайт.
Попробуйте

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

redirect(generate_board_url(true), false, true);
Изображение
София Зарра
phpBB 1.2.0
Сообщения: 11
Стаж: 6 лет 10 месяцев

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

Сообщение София Зарра »

rxu писал(а): 25.05.2017 10:51redirect(generate_board_url(true), false, true);
Выдало

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

[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 2423: Cannot modify header information - headers already sent by (output started at C:/WebServers/OpenServer/domains/localhost/tpl/header.tpl:55)
и остальную страницу вообще не стало генерировать.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

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

Сообщение rxu »

София Зарра писал(а): 25.05.2017 11:41output started at C:/WebServers/OpenServer/domains/localhost/tpl/header.tpl:55
Тут уже сами разбирайтесь со своим скриптом, делайте так, чтобы вывод не осуществлялся раньше, чем отправлены заголовки (headers).
Изображение
Ответить

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