Уважаемые пользователи!
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 раз.
Изображение
Аватара пользователя
Fray98rus
Former team member
Сообщения: 442
Стаж: 16 лет 6 месяцев
Откуда: Санкт-Петербург
Благодарил (а): 1 раз
Поблагодарили: 1 раз

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

Сообщение Fray98rus »

met-al
А если куки почистить и заново войти?
met-al
phpBB 1.0.0
Сообщения: 4
Стаж: 14 лет 4 месяца

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

Сообщение met-al »

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

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

Сообщение rxu »

met-al
Настройте куки нормально. Но здесь не тема для обсуждения этого.
Изображение
met-al
phpBB 1.0.0
Сообщения: 4
Стаж: 14 лет 4 месяца

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

Сообщение met-al »

rxu
Спасибо, сработало
Может, кому понадобится:
В настройках форума путь к cookie прописал "/"
fioru
phpBB 1.0.0
Сообщения: 1
Стаж: 14 лет 4 месяца

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

Сообщение fioru »

Сразу извиняюсь перед теми кто посчитает вопрос не "по теме", но поскольку я правлю данный файл (представленный в первом посте) и мой вопрос связан непосредственно с ним - задаю его тут.
Как можно сразу после авторизации вывести данные из других таблиц базы. Ну например таблица содержащая все данные с дополнительных полей профиля, безусловно есть вероятность что их и вовсе нет, и как тогда избежать ошибок?
Заранее благодарю
3lander
phpBB 1.0.0
Сообщения: 4
Стаж: 14 лет 4 месяца

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

Сообщение 3lander »

доброго всем вечера!
скачал скрипт, прикрутить его удалось без проблем. Однако появилось несколько вопросов, по скрипту, например мне нужно проверять авторизован ли пользователь, но и если нет в блоке выводить форму входа, если авторизован аватар и ник, то есть прикручивать данный код к каждому скрипту по сути на моем сайте. Но когда я начал смотреть проверку авторизации пользователя немного не понял условие это:

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

if((!empty($login) && $login['status'] == LOGIN_SUCCESS) || $user->data['user_id'] != ANONYMOUS)
а именно зачем оператор ИЛИ (||) ?
разве одно не исключает другое? еслиб еще И стоял..
Подскажите пожалуйста.
Большое спасибо заранее.

Добавлено спустя 5 минут 54 секунды:
И еще несколько вопросов,
1 как можно проверить авторизован пользователь или нет (кроме вышеприведенного условия, попроще как нить)?
2 где найти описание класса user?
3 в этом скрипте какую роль несет чекбокс "автосатически входить" у меня неработает в том числе и на этом форуме. Как он должен работать, запоминать меня, или как то еще?

еще раз спасибо!

Добавлено спустя 11 минут 13 секунд:
И еще, честно говоря непонял к чему наличие массива $login если есть объект $user и в итоге проверка и по массиву и по объекту? Объект ведь наверняка при создании (то есть процесе логина) инициализируется необходимыми свойствами для различных проверок? например тот же user_id? Или я непонимаю что то?
Уважаемые помогите разобраться пожалуйста!

Добавлено спустя 2 минуты 7 секунд:
Точнее вот тут даже есть этот массив (собственно логинизация как я понял) $login = $auth->login($username, $password, $autologin);
копируется массивы видимо как бы для удобства просто?

Добавлено спустя 15 минут 28 секунд:
Вопщем по первому вопросу (if((!empty($login) && $login['status'] == LOGIN_SUCCESS) || $user->data['user_id'] != ANONYMOUS))
разобрался, сначала проглядел что при авторизации $user->data['user_id'] почемуто пустой и типа int а впоследствии становится string со значением где эта смена происходит не понял, и зачем она :)

Добавлено спустя 8 минут 19 секунд:
Точнее $user->data['user_id'] не пустой наоборот, а id там сразу есть, я перепутал и неправльно написал, соотвественно проверка

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

$user->data['user_id'] != ANONYMOUS
будет истинна.
И непонятно зачем нужна проверка

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

(!empty($login) && $login['status'] == LOGIN_SUCCESS)
она срабатывает истинно при логине далее она естественно уже не срабатывает. Собвственно зачем она, если и при логине проверить можно просто

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

$user->data['user_id'] != ANONYMOUS
???
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16371
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1745 раз

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

Сообщение rxu »

3lander писал(а):а именно зачем оператор ИЛИ (||) ?
Затем, что пользователь может быть уже авторизован, без прохождения логина. Для чего и служит чекбокс автовхода. Если у вас не работает - это ваша проблема, вероятнее всего, с куками.
3lander писал(а):1 как можно проверить авторизован пользователь или нет (кроме вышеприведенного условия, попроще как нить)?

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

$user->data['user_id'] != ANONYMOUS
3lander писал(а):2 где найти описание класса user?
Здесь.
3lander писал(а):непонял к чему наличие массива $login если есть объект $user
Не забивайте себе голову. Если не поняли - значит, оно вам не надо.

Добавлено спустя 49 секунд:
И прекратите флуд. не надо мыслить вслух и выкладывать весь процесс на форум.
Изображение
3lander
phpBB 1.0.0
Сообщения: 4
Стаж: 14 лет 4 месяца

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

Сообщение 3lander »

Хорошо спасибо, то что он может быть не авторизован это я разобрался, и все равно по моему условие (!empty($login) && $login['status'] == LOGIN_SUCCESS) ничего не дает а по вашему? возможно я неправ.

А как конкретно должен работать автовход если я его отметил? Он будет работать если я не выхожу по кнопке выход а просто закрываю браузер?
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16371
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1745 раз

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

Сообщение rxu »

3lander
Скрипт дан для примера. Чтобы каждый переделал под себя. Что-то не устраивает - меняйте :)
3lander писал(а):А как конкретно должен работать автовход если я его отметил?
Так, как вы и догадались. Если не нажимали на Выход, при следующем входе не должна требоваться авторизация.
Изображение
3lander
phpBB 1.0.0
Сообщения: 4
Стаж: 14 лет 4 месяца

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

Сообщение 3lander »

А! Теперь ясно тогда работает! просто думал должно работать как "запомнить меня". Спасибо.
Потестил еще этот скрипт, и все таки не пойму к чему это "лишнее" условие, объясните? Может я не понимаю? Понятно что это не готовый скрипт, и все таки хотел выяснить этот вопрос, но не потому что меня не устраивает, а для понимания )))

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

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

Сообщение rxu »

3lander писал(а):условие (!empty($login) && $login['status'] == LOGIN_SUCCESS) ничего не дает
По-моему, оно дает то, что в случае, если массив $login пуст, вторая проверка не проводится, т.к. пользователь не осуществляет вход, скрипт сразу проверяет условие $user->data['user_id'] != ANONYMOUS на предмет залогинен или не залогинен клиент, и далее действует по обстоятельствам.

Добавлено спустя 2 минуты:
3lander писал(а):в начале темы было что-то про регистрацию, никакой добрый человек с этим не разбирался пока, или что-то кто-то делал?
Это оффтоп. Лично я пока не делал. Отрывочную информацию можете найти на конференции поиском.
Изображение
3lander
phpBB 1.0.0
Сообщения: 4
Стаж: 14 лет 4 месяца

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

Сообщение 3lander »

rxu писал(а):По-моему, оно дает то, что в случае, если массив $login пуст, вторая проверка не проводится, т.к. пользователь не осуществляет вход, скрипт сразу проверяет условие $user->data['user_id'] != ANONYMOUS на предмет залогинен или не залогинен клиент, и далее действует по обстоятельствам.
О какой второй проверке Вы говорите? Об этой

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

$login['status'] == LOGIN_SUCCESS
?
Есть состояние залогинен пользователь и не залогинен. Что и проверяется вторым условием, зачем первое, осуществил он вход в данном запуске скрипта или нет, значиния не имеет, так как никаких действий не происходит по этому условию.
единственное это

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

$auth->acl($user->data);
но опять же там опять проверка на пустоту, само по себе.
Разве не так?

Добавлено спустя 5 минут 32 секунды:
Все вопрос снят с повестки дня. В моей версии это и впрямь не нужно, в версии же изначальной, которую я поменял, данная проверка нужна для поздравления пользователя со входом на сайт у меня этот этап опущен :)
Аватара пользователя
AllFuns
phpBB 1.4.0
Сообщения: 39
Стаж: 14 лет 10 месяцев
Откуда: Иваново

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

Сообщение AllFuns »

Доброго времени суток.У меня есть сайт.Я сделал интеграцию с форумом,как описано в этой теме.И хотел бы кое-какие вещи с форума подключить в свой сайт.Проблема в том,что я где то поднимал тему интеграции Bbcode на свой сайт,но никто так и не ответил.По этому поясню в чем проблема.На своем сайте я хочу использовать код вывода палитры цветов из editor.js форума и не знаю как и где указать в какое именно поле данных после нажатия на цвет,должен вставляться код.Сам вывод палитры на сайте я сделал.

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

<script type="text/javascript" src="http://<?echo$_SERVER['HTTP_HOST'];?>/forum/styles/prosilver/template/editor.js"></script>

<script type="text/javascript">
		// <![CDATA[
			function change_palette()
			{
				dE('colour_palette');
				e = document.getElementById('colour_palette');

			}

			colorPalette('h', 15, 10);
		// ]]>
		</script>
Проблема еще в том,что на сайте на различных страницах имена полей могут иметь различные названия.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16371
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1745 раз

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

Сообщение rxu »

AllFuns, в принципе, вопрос не имеет никакого отношения к теме.
Но, в связи с большим праздником, намекну. posting_buttons.html, var form_name и var text_name.
Внимательнее изучайте скрипты, из которых выдираете код.
Изображение
Аватара пользователя
AllFuns
phpBB 1.4.0
Сообщения: 39
Стаж: 14 лет 10 месяцев
Откуда: Иваново

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

Сообщение AllFuns »

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

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