Вывод данных - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

СвернутьПрикрепленные теги

api

Страница 1 из 1

Вывод данных

#1 Пользователь не на сайте   avgaz ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 153
  • Регистрация: 28-Январь 08
  • Репутация: 5
  • IPB version:3.4.x
 

Отправлено 02 Январь 2016 - 23:00

Здравствуйте, подскажите как реализовать вывод к примеру имени пользователя, id, мыла и другой ифны автоматизированного пользователя, на отдельную от форума страницу?
К примеру есть страница start.php нужно что бы при её просмотре пользователю вывелся его логин, id, группа, мыло.
0

#2 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 735
  • Регистрация: 20-Март 09
  • Репутация: 2 273
  • IPB version:3.1.x
 

Отправлено 02 Январь 2016 - 23:15

<?php

require_once 'init.php';
\IPS\Dispatcher\Front::i();

$member = \IPS\Member::loggedIn();
var_dump( $member );

?>

0

#3 Пользователь не на сайте   avgaz ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 153
  • Регистрация: 28-Январь 08
  • Репутация: 5
  • IPB version:3.4.x
 

Отправлено 04 Январь 2016 - 16:00

Спасибо это то что нужно, но остались ещё вопросы.
Как достать ключ логина, то есть к примеру при ссылке Выход используется ключ например logout/?csrfKey=0f8ce0ac1a3ee2cfd1523c2f68a50307 вот как получить этот ключ то же на отдельной странице?
Где храниятся названия разделов и их описание? в таблице forums_forums их нет, то же самое с группами, нашёл их название в таблице core_sys_lang_words но не могу понять по какому принципу сделать выборку из этой таблицы, то есть к примеру у группы значение id равно 4 как вывести название группы из этой таблицы?
0

#4 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 735
  • Регистрация: 20-Март 09
  • Репутация: 2 273
  • IPB version:3.1.x
 

Отправлено 04 Январь 2016 - 19:20

csrf ключ:

\IPS\Session::i()->csrfKey

0

#5 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 2 166
  • Регистрация: 26-Октябрь 11
  • Репутация: 814
  • IPB version:I have no IPB
 

Отправлено 05 Январь 2016 - 10:59

Просмотреть сообщениеavgaz сказал(а):

Где храниятся названия разделов и их описание? в таблице forums_forums их нет, то же самое с группами, нашёл их название в таблице core_sys_lang_words но не могу понять по какому принципу сделать выборку из этой таблицы, то есть к примеру у группы значение id равно 4 как вывести название группы из этой таблицы?

Зачем вообще туда лезть?

Работа с группами:
\IPS\Member\Group::groups()


Работа с форумами:
\IPS\forums\Forum::roots()

0

#6 Пользователь не на сайте   avgaz ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 153
  • Регистрация: 28-Январь 08
  • Репутация: 5
  • IPB version:3.4.x
 

Отправлено 05 Январь 2016 - 18:36

Это не то, с помощью этого можно вывести все из таблицы групп, но кроме названий групп которых там нет, то же самое и с форумами
0

#7 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 2 166
  • Регистрация: 26-Октябрь 11
  • Репутация: 814
  • IPB version:I have no IPB
 

Отправлено 06 Январь 2016 - 13:01

	$groupsNames = array();
	
	foreach	(\IPS\Member\Group::groups() as $group)
	{
		$groupsNames[] = $group->name;
	}

	$groupsAsString = implode(', ', $groupsNames);
	\IPS\Member::loggedIn()->language()->parseOutputForDisplay( $groupsAsString );
	
	print $groupsAsString;


Мультиязычно.
1

#8 Пользователь не на сайте   merciful ответил: »

 
 
  • Newbie
  • *
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1
  • Регистрация: 02-Март 16
  • Репутация: 0
  • IPB version:4.1.x
 

Отправлено 02 Март 2016 - 23:23

Добрый день,

Спасибо большое за подсказки выше, долго искал как сделать авторизацию на сайте (через логин на форуме). Все заработало, столкнулся только с одной проблемой, выкидывает из сессии (иногда). Стоит только вернуться на форум, как снова и на сайте все ок.

Использую код:
<?php

require_once 'forum/init.php';
/* Инициализируем систему */
\IPS\Dispatcher\Front::i(); //or \IPS\Dispatcher\Build::i();

/* Получаем объект с данными о текущем пользователе */
$member = \IPS\Member::loggedIn(); 



Проверка, зарегистрирован пользователь или нет:
if ($member->member_id) 
{
  форма с имением и выход.
}


0

#9 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 735
  • Регистрация: 20-Март 09
  • Репутация: 2 273
  • IPB version:3.1.x
 

Отправлено 04 Март 2016 - 23:34

Просмотреть сообщениеmerciful сказал(а):

/* Инициализируем систему */
\IPS\Dispatcher\Front::i(); //\IPS\Dispatcher\Build::i();

Кстати да, если нужен фреймворк форума именно как api, то лучше использовать для инициализации класс Build. Front предназначен для публичной части форума с загрузкой css и js файлов и всякими проверками и ошибками, что в случае api для отдельного приложения не совсем желательно. Front имеет смысл использовать когда пишете в оболочки форума. И без вызова init(), этот метод вызывается автоматически из i().


Просмотреть сообщениеmerciful сказал(а):

столкнулся только с одной проблемой, выкидывает из сессии (иногда)

Смотрите кукисы. В частности для повторной аутентификации после истечения сессии - pass_hash и member_id.
2

#10 Пользователь не на сайте   Dmitriy427 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Specialist
  • Сообщений: 574
  • Регистрация: 15-Октябрь 11
  • Репутация: 152
  • Откуда:Россия, Тула
  • IPB version:3.3.x
 

Отправлено 05 Март 2016 - 06:20

По части проверок "Front" ограничивает только метод вывода данных, темплейты, скрипты и стили автоматом не подключаются, это уже "Controller". Что до API, он сильно сужает возможности работы с фреймворком.
1

Сообщить об этой теме:


Страница 1 из 1


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2016 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна