Перейти к контенту
  • 0

Сортировка груп


subONE

Вопрос

Вот поставил у себя индикатор на форуме...

R.Администрация | Главный Модератор | Модератор | Пользователи

 

теперь можно ли сделать так, чтоб в списки онлайн пользователей, имена сортировались по групам, а не в разброс

например...

 

15 гостей, 5 пользователей 0 скрытых пользователей

subONE, Russki, РУДОЛЬФ, Kazach, Dragger, и тд.

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0
Они сортируются не в разброс, а по последним действиям. Сортировка по группам - бред, тогда потеряется смысл вообще выводить этот самый список. На лицо экоцентризм правящей верхушки форума.
Ссылка на комментарий
Поделиться на других сайтах

  • 0
просто если будет сортироватся на форуме по групам... будет уже легче смотреть кто где.... я такой мод видел на форуме в самом низу посмотрите как у них сортируются имена под групы
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Это хороший вариант, но тогда порядок может оказаться не такой как хочет subONE :D
Ссылка на комментарий
Поделиться на других сайтах

  • 0
ORDER BY mgroup

a где это по точнее найти

 

Это хороший вариант, но тогда порядок может оказаться не такой как хочет subONE :D

хмм

Ссылка на комментарий
Поделиться на других сайтах

  • 0
kak?????? :D

Через if поочередно для каждой группы. Заодно получишь возможность вывести/скрыть нужные группы из списка.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

kak?????? :D

Заодно получишь возможность вывести/скрыть нужные группы из списка.

это у меня и так есть.... а вот как именно через if то проблемма

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Это хороший вариант, но тогда порядок может оказаться не такой как хочет subONE :D

Почему? Как раз по группам.

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Почему? Как раз по группам.

Он же хочет, чтобы сначала админы, потом суперы, потом модеры, потом уже юзеры.

А в обычном порядке групп будет другой порядок.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Если просто чтобы группы были по порядку наверное так:

В ./sources/lib/func_boardstats.php найти:

			while ( $r = $this->ipsclass->DB->fetch_row() )
		{
			$rows[ $r['running_time'].'.'.$r['id'] ] = $r;
		}

Заменить на:

			while ( $r = $this->ipsclass->DB->fetch_row() )
		{
			$rows[ $r['member_group'].'.'.$r['id'] ] = $r;
		}

Но при этом нельзя будет выбрать порядок следования, это уже чуть сложнее.

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Он же хочет, чтобы сначала админы, потом суперы, потом модеры, потом уже юзеры.

SELECT m.mgroup, t.* FROM ibf_topics t, ibf_members m WHERE m.mgroup=6 and m.id=t.starter_id
UNION
SELECT m.mgroup, t.* FROM ibf_topics t, ibf_members m WHERE m.mgroup=2 and m.id=t.starter_id
UNION
SELECT m.mgroup, t.* FROM ibf_topics t, ibf_members m WHERE m.mgroup=4 and m.id=t.starter_id
UNION
SELECT m.mgroup, t.* FROM ibf_topics t, ibf_members m WHERE m.mgroup=19 and m.id=t.starter_id

 

Надеюсь принцип понятен. Запрос не в тему просто для демонстрации.

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Надеюсь принцип понятен. Запрос не в тему просто для демонстрации.

Это увеличивает количество запросов к БД.

Я предлагал несколько иное:

Один запрос к БД, затем:

if ($data['mgroup']==4)
{
  Цикл выводит рутовых админов в списке онлайн
}

if ($data['mgroup']==5)
{
  Цикл выводит суперов в списке онлайн
}

...

if ($data['mgroup']==1)
{
  Цикл выводит простых юзеров в списке онлайн
}

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Проще в моей сортировке (так в оригинале) вместо $rows[ $r['member_group'] ] написать $rows[ $gr_arr[ $r['member_group'] ], а $gr_arr - массив соответствий, подобрать для правильного порядка :D
Ссылка на комментарий
Поделиться на других сайтах

  • 0
Это увеличивает количество запросов к БД.

Да нет. На самом деле MySQL оптимизирует их внутри себя в один запрос, но при этом сделает специальную сортировку рядов.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

SANNis так как ты сказал не работает!! ;)

 

FatCat так как ты сказал.. то я вооше не понел :D

 

Song .. незнаю но я боюсь делать запрос.. может ешё глюк какой сделается? :) *ты проверял?*

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Это увеличивает количество запросов к БД.

Да нет. На самом деле MySQL оптимизирует их внутри себя в один запрос, но при этом сделает специальную сортировку рядов.

Мэтр! Вы сами себе противоречите:

они запросто могут перемешаться, это зависиит от внутреннего оптимизатора MySQL.

Особенно 5-ая версия любит такие штучки.

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Перемешаться - запросы идущие подряд от одного клиента выполненные отдельно. А это - всё-таки один запрос.
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.