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

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

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

[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 раз.
Изображение
false
phpBB 1.0.0
Сообщения: 1
Стаж: 15 лет 9 месяцев

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

Сообщение false »

если залоген скрипт всё отображает нормально, как разлогинишься - белый экран
Аватара пользователя
Rayden
Former team member
Сообщения: 3739
Стаж: 19 лет 10 месяцев
Поблагодарили: 3 раза

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

Сообщение Rayden »

И к чему была отправлена эта депеша?
phpBB2 FAQ
phpBB3 FAQ
Аватара пользователя
FladeX
Former team member
Сообщения: 1935
Стаж: 17 лет 11 месяцев
Откуда: Саранск
Поблагодарили: 3 раза

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

Сообщение FladeX »

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

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

<?php
/**
* Add user to forum
*/
include('forum/common.php');
include('forum/includes/functions.php');
include('forum/includes/functions_user.php');
$user_row['username'] = 'testuser';
$user_row['user_password'] = phpbb_hash("testpassword");
$user_row['user_email'] = 'root@example.com';
$user_row['group_id'] = 2;
$user_row['user_type'] = 0;

user_add($user_row, false); 

?>
Запускаю - ноль эффекта. Может кто-нибудь на ошибку указать? Вроде по коду сверился, всё ок.
//
// Okay, let's do the loop, yeah come on baby let's do the loop
// and it goes like this ...
| phpBB Adept ] | Каталог форумов | генератор sitemap для форумов | форум про форумы
Аватара пользователя
FladeX
Former team member
Сообщения: 1935
Стаж: 17 лет 11 месяцев
Откуда: Саранск
Поблагодарили: 3 раза

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

Сообщение FladeX »

Разобрался - я константы забыл задать. Итоговый вариант тут - http://fladex.ru/news/a-131.html
//
// Okay, let's do the loop, yeah come on baby let's do the loop
// and it goes like this ...
| phpBB Adept ] | Каталог форумов | генератор sitemap для форумов | форум про форумы
Аватара пользователя
Xandir
phpBB 1.0.0
Сообщения: 8
Стаж: 15 лет 10 месяцев

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

Сообщение Xandir »

У меня такой вопрос:

В скрипте авторизации присутствуют следующие строки:

header('Cache-Control: private, no-cache="set-cookie"');
header('Expires: 0');
header('Pragma: no-cache');

Для чего они нужны? Я так понимаю это было скопировано с движка форума, там понятно для чего нужны эти записи.
Но вот у меня сайт состоит из множественных графических элементов и каждый раз когда пользователь переходит по ссылкам из-за этих записей графика постоянно загружается снова и снова. Это же не дело.

Если я удалю эти строчки это не повлечёт каких-либо сбоев в нормальной работе скрипта авторизации?
Аватара пользователя
Rayden
Former team member
Сообщения: 3739
Стаж: 19 лет 10 месяцев
Поблагодарили: 3 раза

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

Сообщение Rayden »

Повлечет.
Но ты можешь делать все что угодно. Тебе же лень набрать в поиске, к примеру, Cache-Control: private и посмотреть, что эта команда делает.
phpBB2 FAQ
phpBB3 FAQ
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16947
Стаж: 18 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 549 раз
Поблагодарили: 1700 раз

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

Сообщение rxu »

Xandir
Как я уже неоднократно рассказывал здесь, данный скрипт является только примером, а не конечным продуктом, который можете приспосабливать по своему усмотрению.
Изображение
demon-online
phpBB 1.2.0
Сообщения: 17
Стаж: 15 лет 1 месяц
Забанен: Бессрочно

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

Сообщение demon-online »

Всё интегрировалось, спасибо.
Вопрос: "Где найти описание таких штук - $user->xxxxxx[xxxxxx], используемых в скрипте с примером?"
Друг не тот кто выбирает слова, а тот кто даст подзатыльник. (c) demon[online]
Одессит
phpBB 1.0.0
Сообщения: 2
Стаж: 14 лет 11 месяцев

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

Сообщение Одессит »

Залогинивает, но при переходе в форум этого уже нет.
И если обновить эту тестовую страницу, то так же пропадает залогивание, правда в коде я и не вижу никаких проверок на это, хотя для меня это не важно, главное, чтобы при переходе на сам форум логирование оставалось. Что может быть не так?
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 19 лет 11 месяцев
Благодарил (а): 19 раз
Поблагодарили: 30 раз
Забанен: Бессрочно

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

Сообщение MAzZY »

Куки.
На одном домене находятся сайт и форум?
Одессит
phpBB 1.0.0
Сообщения: 2
Стаж: 14 лет 11 месяцев

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

Сообщение Одессит »

Находится на одном, да и тестировал я по-разному.
Скорее всего как-то не настроил форум, а то в сессию и в куки ничего не пишется даже когда просто форум использую. Вижу, что sid передается через get, если убрать с адреса, то становлюсь не залогиненым.
Аватара пользователя
fargred
phpBB 1.2.1
Сообщения: 20
Стаж: 14 лет 11 месяцев
Откуда: /usr/portage/people/

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

Сообщение fargred »

Приветствую-)
Сегодня пытался авторизоваться через ваш скрипт
@version $Id: login.php,v 1.2.0 2008/03/09 17:54:25 rxu Exp $,
но словил ошибку в файле /includes/session.php при вызове метода

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

$user->setup('ucp');

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

// Перед следующим блоком if переменные имеют следующие значения:
// $style = 2
// !$this->theme = 1
// $this->data['user_style'] = 1

		// User has wrong style
		if (!$this->theme && $style == $this->data['user_style'])
		{
                ...
		}
Всего на форум было поставлено 3 стиля. prosilver, subsilver2* и фактически еще один subsilver2 (с парой измененных цветов, не более) Когда все они были активированы, блок if, приведенный выше, не проходил. Я решил деактивировать prosilver, чтобы вернуть число стилей к исходному, при этом 51 пользователь был автоматически переведен на subsilver2. Блок if стал вдруг выполняться в не зависимости от того, два стиля активировано или три!

Тем не менее, по-прежнему срабатывает блок, на котором выполнение останавливается

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

		if (!$this->theme)
		{
			trigger_error('Could not get style data', E_USER_ERROR);
		}
Обратился сюда, потому что сам по себе форум работает прекрасно.
Пробовал отключать куки, не помогает.
Версии:
phpBB 3.0.7-PL1
PHP Version 5.2.9
mysqli 5.0.77
готовая русская локализация, больше никаких модов, патчей и прочего.
Заранее благодарен за поддержку.
Аватара пользователя
fargred
phpBB 1.2.1
Сообщения: 20
Стаж: 14 лет 11 месяцев
Откуда: /usr/portage/people/

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

Сообщение fargred »

С предыдущей проблемой разобрался.
Теперь логин работает, но:
  1. При переходе на другую страницу сайта куки остаются, а форма для ввода логина/пароля появляется снова. (Может, к ссылкам <a href=index.php?... дописывать sid=... ? и если да, то как?)
    Всю тему уже несколько раз прочитал, код из login.php стоит в самом верху, более никакой скрипт сессий не касается.
  2. Русскоязычные логины не проходят авторизацию. Что кроме

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

    	$username = request_var('username', '', true);
    	$username = iconv("cp1251", "UTF-8", $username);
    	$password = request_var('password', '', true);
    	$password = iconv("cp1251", "UTF-8", $password);
    	$autologin	= (!empty($_POST['autologin'])) ? true : false;
    
    	$login = $auth->login($username, $password, $autologin);
    можно было бы придумать?
Готов копать глубоко, только плохо представляю, в какую сторону.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16947
Стаж: 18 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 549 раз
Поблагодарили: 1700 раз

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

Сообщение rxu »

fargred писал(а):   $password = request_var('password', '', true);
   $password = iconv("cp1251", "UTF-8", $password);
Это что за штука? phpBB3 не работает с колировками, отличными от юникода, поэтому весь ввод надо выдавать в UTF-8 еще до отправки формы, а делать переколировку после - вообще бессмысленно.
Изображение
Аватара пользователя
Rayden
Former team member
Сообщения: 3739
Стаж: 19 лет 10 месяцев
Поблагодарили: 3 раза

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

Сообщение Rayden »

rxu
Это твой совет с третьей страницы )))

Он не работает. Есть другой совет - на шестой странице, от Jirvil.
phpBB2 FAQ
phpBB3 FAQ
Перенесено из форума FAQ (phpBB 3.0.x) в форум FAQ 28.09.2016 15:02 модератором rxu

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