Если у вас возникли вопросы по системе прав доступа, рекомендуем ознакомится со следующей статьёй: Система прав доступа phpBB 3.0.x
Наиболее часто возникающие вопросы:
Как дать право предупреждений и бана модератору только в одном форуме? Ответ: Штатными средствами - никак. Эти права можно назначить только глобально, на всю конференцию.
Как сделать доступ на уровне тем? Ответ: Штатными средствами - никак. Права доступа организованы на уровне форумов.
romanse писал(а):делал и значение нет и никогда.проблема в том что если новый пользователь, который только что зарегистрировался и вступил в группу, не может зайти в приватный форум.
Не забывайте, что есть группа Новые пользователи в которую и попадают вновь зарегистрированные, если вы не отключили эту функцию.
Pittie писал(а):Жду, может найдется гуру и подскажет иное решение
Иное решение может быть только в модификации.
Не все то WINDOWS, что висит... phpBB только учусь. ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Не все то WINDOWS, что висит... phpBB только учусь. ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
я кажется понял в чем проблема моя,но пока не знаю как ее решить
Вопрос: Я создал приватный форум и специальную группу, которой разрешил к нему доступ, а остальным пользователям запретил. Но члены этой группы не имеют доступа к нему.
добавление в эту группу идет автоматически, если пользователь прописывает свой ник форума на другом сайте.но права его не обновляются.они обновляется, если я, что то делаю в админке любое действие. какая есть команда чтобы права обновлялись при добавлении в группу.
При попытке установить локальные права на форум одному из пользователей выдает следующую ошибку:
[phpBB Debug] PHP Notice: in file /includes/acp/auth.php on line 406: Undefined index: 4202
[phpBB Debug] PHP Notice: in file /includes/acp/auth.php on line 412: Undefined index: 4202
по другим пользователям все проходит. посмотрел, этот пользователь кроме стандартных групп входит еще в ряд приватных. что делать?
Добавлено спустя 6 минут 14 секунд:
очень странный пользователь :(
оставил ему только группу зарегистрированные, все равно при попытке смены прав локально на один из форумов вылетает ошибка, подскажите как быть? я в растерянности. никаких модов, связанных с локальными правами не стоит
Добавлено спустя 5 минут 24 секунды:
упс, да он не один такой... это не может быть общим багом 3.0.7 ?
// Now obtain memberships
$user_groups_default = $user_groups_custom = array();
if ($user_mode == 'user' && $group_display)
{
$sql = 'SELECT group_id, group_name, group_type
FROM ' . GROUPS_TABLE . '
ORDER BY group_type DESC, group_name ASC';
$result = $db->sql_query($sql);
$groups = array();
while ($row = $db->sql_fetchrow($result))
{
$groups[$row['group_id']] = $row;
}
$db->sql_freeresult($result);
$memberships = group_memberships(false, array_keys($hold_ary), false);
// User is not a member of any group? Bad admin, bad bad admin...
if ($memberships)
{
foreach ($memberships as $row)
{
if ($groups[$row['group_id']]['group_type'] == GROUP_SPECIAL)
{
$user_groups_default[$row['user_id']][] = $user->lang['G_' . $groups[$row['group_id']]['group_name']]; //строка 406
}
else
{
$user_groups_custom[$row['user_id']][] = $groups[$row['group_id']]['group_name']; //строка 412
}
}
}
unset($memberships, $groups);
}
// If we only have one forum id to display or being in local mode and more than one user/group to display,
// we switch the complete interface to group by user/usergroup instead of grouping by forum
// To achieve this, we need to switch the array a bit
if (sizeof($forum_ids) == 1 || ($local && sizeof($ug_names_ary) > 1))
{
$hold_ary_temp = $hold_ary;
$hold_ary = array();
foreach ($hold_ary_temp as $ug_id => $row)
{
foreach ($forum_names_ary as $forum_id => $forum_row)
{
if (isset($row[$forum_id]))
{
$hold_ary[$forum_id][$ug_id] = $row[$forum_id];
}
}
}
unset($hold_ary_temp);
hdv
У вас пользователь входит в несуществующую группу с group_id = 4202.
Возможно, какие-то проблемы с БД (или руками правили?).
Смотрите напрямую в БД таблицу групп, ищите запись с group_id = 4202 и смотрите, что это.
он не один такой. возможно и с бд проблемы, руками не трогал. спасибо, посмотрю, по результату отпишу.
Добавлено спустя 37 минут 11 секунд:
спасибо, rxu. в ручную поправил таблицу. видимо была какая то группа, которая удалилась, а пользователи остались прикрепленными к ней.
вопрос, а разве при удалении группы не должно очиститься таблица пользователей по этой группе? был сбой?
Добрый день!
Есть ли возможность дать авторам тем право модерировать собственные темы (редактировать, удалять сообщения других пользователей)? В таблице прав я такого не нашёл, но может быть это можно сделать програмно? Например, права дать всем, но кнопки показывать только авторам и модерам?
Я видел на одном из сайтов форум на основе phpBB (не знаю, какой версии), где это работало, и ещё автор темы мог назначить модера для своей темы, а также создать игнор-лист. Как такое делается?