Страница 2 из 4

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 17:33
Татьяна5
Только те, которые перечислены в функции

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 17:40
zabe1
Вопрос решил. Проблема была в формате даты. При использовании user_add не было указано формат даты. В личных настройках указал формат даты и теперь все в норме. Спасибо за помощь

Отправлено спустя 2 минуты 52 секунды:
Татьяна5 писал(а): 18.12.2018 17:33 Только те, которые перечислены в функции

Возник вопрос. Как с помощью HTTP запроса выдать права конкретному пользователю на конкретный раздел форума? Пробовал делать через БД. Права выдались но по факту их нет.

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 17:44
Татьяна5
Татьяна5 писал(а): 17.12.2018 21:21 includes\acp\acp_permissions.php, метод set_permissions

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 17:46
zabe1
Татьяна5 писал(а): 18.12.2018 17:44 includes\acp\acp_permissions.php, метод set_permissions
Можно пример использования. Параметры не совсем понятны

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 18:04
Татьяна5
Там в том же файле параметры можно разобрать (вызов функции в том же файле, где она задана)

По-хорошему ещё можно добавить пользователя в некоторую группу, а этой группе назначить нужные права. Этот вариант гораздо гибче при дальнейшем использовании
Это в includes/functions_user.php, group_user_add

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 19:19
zabe1
Татьяна5 писал(а): 18.12.2018 18:04 По-хорошему ещё можно добавить пользователя в некоторую группу, а этой группе назначить нужные права. Этот вариант гораздо гибче при дальнейшем использовании
Это в includes/functions_user.php, group_user_add
Придется тогда создать около 30 групп. Да и мне надо что бы писало ник пользователя в разделе где он модератор

Отправлено спустя 5 минут 58 секунд:
Татьяна5 писал(а): 18.12.2018 18:04 Там в том же файле параметры можно разобрать (вызов функции в том же файле, где она задана)
В том то и проблема что я не могу их разобрать. Поэтому и прошу пример кода. К примеру как выдать права ид 15 на раздел ид 10 пользователю ид которого 68?

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 21:03
Sheer
В phpBB нет никаких разделов - есть форумы.
zabe1 писал(а): 18.12.2018 19:25 мне надо что бы писало ник пользователя в разделе где он модератор
И из-за этого весь огород? А ведь это делается штатными методами
moder.jpg

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 21:06
zabe1
Sheer писал(а): 18.12.2018 21:03 И из-за этого весь огород? А ведь это делается штатными методами
Тема посвящена тому как делать все через HTTP запрос а не штатно.

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 21:15
rxu
Смотрите includes/acp/auth.php function set_permissions($mode, $permission_type, &$auth_admin, &$user_id, &$group_id).

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 21:36
zabe1
rxu писал(а): 18.12.2018 21:15 Смотрите includes/acp/auth.php function set_permissions($mode, $permission_type, &$auth_admin, &$user_id, &$group_id).
Смотрел. Не могу разобрать как их использовать грамотно. Поэтому и прошу пример кода. К примеру как выдать права ид 15 на раздел ид 10 пользователю ид которого 68?

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 21:43
rxu
zabe1 писал(а): 18.12.2018 21:36 Поэтому и прошу пример кода.
Пример кода элементарно находится поиском вхождения set_permissions( по тексту исходного кода.
Например, в includes\acp\acp_permissions.php.

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 21:48
zabe1
rxu писал(а): 18.12.2018 21:43 Пример кода элементарно находится поиском вхождения set_permissions( по тексту исходного кода.
Например, в includes\acp\acp_permissions.php.
Я указал кокой именно пример мне нужен. Мне надо конкретному пользователю дать права к конкретному разделу. Функция set_permissions имеет вот такие переменные ($mode, $permission_type, $auth_admin, &$user_id, &$group_id) я не могу понять как мне их использовать так что бы я выдал конкретному пользователю доступ к конкретному разделу. К примеру в функции group_user_add все понятно. Вставил ид пользователя и ид группы функция сама все сделала. Как такое сделать с set_permissions если там даже нету переменной которая отвечает за номер конкретного раздела? Именно поэтому я и пишу сюда что бы мне хоть немного пролили свет на это все дело.

Отправлено спустя 1 минуту 34 секунды:
Обьясню ещё раз что мне надо. Через HTTP запрос выдать права конкретному пользователю к конкретному разделу. Делал все через БД все везде зафиксировано но почему то на практике прав нету. Если через адм панель проверить права пользователя то они будут а если зайти под самим пользователем то прав нету.

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 21:59
Sheer
zabe1 писал(а): 18.12.2018 21:36 как выдать права ид 15
Никак. Никто не может знать заранее, какой ID имеет право, например f_sticky
А пример такой.

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

	$forum_id = 15;
		$assigned_role = 0;
		$ug_type = 'user';
		$ug_id = array(68);
		$auth_settings = array(
			'f_announce' => 0,// Может создавать объявления - Никогда
			'f_announce_global' => 0, //Может создавать важные темы - Никогда
			'f_delete' => -1, //Может безвозвратно удалять собственные сообщения - Нет
			'f_edit' => 1, // Может редактировать собственные сообщения - Да
		);
		$auth_admin->acl_set($ug_type, $forum_id, $ug_id, $auth_settings, $assigned_role);
zabe1 писал(а): 18.12.2018 19:25 что бы писало ник пользователя в разделе где он модератор
Чтобы в данном случае пишется слитно. Еще раз - нет разделов, есть форумы. Придерживайтесь общепринятой терминологии.
Пример

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

INSERT INTO phpbb_moderator_cache (forum_id, user_id, username, group_id, group_name, display_on_index) VALUES
(3, 49, 'R8FAS', 0, '', 1);
При этом пользователю с ID 49 должны быть выданы соответствующие модераторские права или назначена роль.

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 22:30
zabe1
Sheer писал(а): 18.12.2018 21:59 Никак. Никто не может знать заранее, какой ID имеет право, например f_sticky
Я немного не правильно выразился. У меня есть готовые роли и я знаю их ID

Re: Добавление пользователя через HTTP

Добавлено: 18.12.2018 22:35
Sheer
Тогда составляйте SQL-запросы и вперед. Только не запутайтесь в таблицах.