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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

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

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

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

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

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

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

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

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