Проверка на группу в коде
-
- phpBB 2.0.1
- Сообщения: 261
- Стаж: 19 лет 1 месяц
Проверка на группу в коде
Уважаемые, не могли бы подсказать как осуществить в коде проверку на группу?
Это лох-неское чудовище потеряло свое озеро и бегает, пока его кто-нибудь не пристрелит.
-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Группу крови?
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- phpBB 1.4.3
- Сообщения: 89
- Стаж: 18 лет 1 месяц
- Откуда: Беларусь, Минск
-
- phpBB 2.0.2
- Сообщения: 340
- Стаж: 18 лет 8 месяцев
я так полагаю наличие пользователя в группе...
так выберем все группы в которых пользователь... думаю как чуток подправить под конкретную группу объяснять не надо...
Код: Выделить всё
$sql = 'SELECT g.group_name, g.group_id, ug.user_id
FROM ' . GROUPS_TABLE . ' g, ' . USER_GROUP_TABLE . ' ug
WHERE ug.group_id = g.group_id
AND ug.user_id = ' . $user_id . '
AND ug.user_pending = 0
AND g.group_single_user = 0';
Помните на форуме демократии нету, все делается так как вздумается администрации и правым быть вы не можете..
-
- phpBB 2.0.1
- Сообщения: 261
- Стаж: 19 лет 1 месяц
соглашусь.что формулировка вопроса была поставлена некорректно,приношу свои извинения. Хотелось бы осуществлять в коде проверку на группу по аналогу проверки на пользователя например проверка на админа осущствляется так
if ( $userdata['user_level'] == ADMIN )
или
if ( $userdata['user_id'] == номер регисрации)
а вот как происходит проверка на группу?
if ( $userdata['user_level'] == ADMIN )
или
if ( $userdata['user_id'] == номер регисрации)
а вот как происходит проверка на группу?
-
- phpBB 2.0.2
- Сообщения: 340
- Стаж: 18 лет 8 месяцев
2 go
такой проверки нету... но с вариантом моего запроса можно сделать нечто подобное...
теперь проверить можно так..
ПыСы
писал на ходу в форму ответа, поэтому мог чуток промахнутся... но вроде выглядит верно...
EDIT: добавил проверку на выполневшийся запрос
такой проверки нету... но с вариантом моего запроса можно сделать нечто подобное...
Код: Выделить всё
$sql = 'SELECT g.group_name, g.group_id, ug.user_id
FROM ' . GROUPS_TABLE . ' g, ' . USER_GROUP_TABLE . ' ug
WHERE ug.group_id = g.group_id
AND ug.user_id = ' . $user_id . '
AND ug.user_pending = 0
AND g.group_single_user = 0';
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not select groups information', '', __LINE__, __FILE__, $sql);
}
if ( $row = $db->sql_fetchrow($result) )
{
do
{
$userdata['groups'][$row['group_id']] = 1;
}
while ( $row = $db->sql_fetchrow($result) );
}
Код: Выделить всё
if ( isset($userdata['groups'][$group_id]) )
{
/* Code if user in group here */
}
писал на ходу в форму ответа, поэтому мог чуток промахнутся... но вроде выглядит верно...
EDIT: добавил проверку на выполневшийся запрос
Помните на форуме демократии нету, все делается так как вздумается администрации и правым быть вы не можете..
-
- phpBB 2.0.1
- Сообщения: 261
- Стаж: 19 лет 1 месяц
-
- phpBB 2.0.2
- Сообщения: 340
- Стаж: 18 лет 8 месяцев
2 go
в принципе, можно в includes/sessions.php в функции session_begin() подправить оба запроса... но я щас делать этого не буду ) если хочешь сделать сам, то могу предложить, для примера посмотреть как сделан запрос форумов на главной...
в принципе, можно в includes/sessions.php в функции session_begin() подправить оба запроса... но я щас делать этого не буду ) если хочешь сделать сам, то могу предложить, для примера посмотреть как сделан запрос форумов на главной...
Помните на форуме демократии нету, все делается так как вздумается администрации и правым быть вы не можете..
-
- phpBB 2.0.1
- Сообщения: 261
- Стаж: 19 лет 1 месяц
Код: Выделить всё
$sql = "SELECT aa.forum_id, g.group_id, g.group_name, g.group_colour
FROM " . AUTH_ACCESS_TABLE . " aa, " . USER_GROUP_TABLE . " ug, " . GROUPS_TABLE . " g
WHERE aa.auth_mod = " . TRUE . "
AND g.group_single_user = 0
AND g.group_type <> " . GROUP_HIDDEN . "
AND ug.group_id = aa.group_id
AND g.group_id = aa.group_id
GROUP BY g.group_id, g.group_name, aa.forum_id
ORDER BY aa.forum_id, g.group_id";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not query forum moderator information', '', __LINE__, __FILE__, $sql);
}
while( $row = $db->sql_fetchrow($result) )
{
$forum_moderators[$row['forum_id']][] = '<a href="' . append_sid("groupcp.$phpEx?" . POST_GROUPS_URL . "=" . $row['group_id']) . '" style="color:' . $row['group_colour'] . '">' . $row['group_name'] . '</a>';
}
$db->sql_freeresult($result);
на инклюд-сесион бензина не хватило ,скажу мягко.мозг приостановился):lol:
-
- phpBB 2.0.2
- Сообщения: 340
- Стаж: 18 лет 8 месяцев