Регистрация
Вход через соцсети
Восстановление пароля

Помогите сделать сортировку пользователей онлайн

Новый топик
02.06.2010, 15:22
Ответить | Цитировать
Sape
sitkoru

Зарегистрирован:
2010-03-09
Сообщений: 5

Подскажите пожалуйста как сделать сортировку по рейтингу пользователей тех кто онлайн? Сортировка по рейтингу уже работает, но среди всех зарегистрированных пользователей, как сделать только по тем пользователям которые в сети? сейчас код такой стоит:

".listQuery("SELECT `se`.`User_ID`, `se`.`SessionTime`,`us`.`Name`, `us`.`Photo`, `us`.`Rate`, `us`.`Region`, `cl`.`City_ID`, `cl`.`City_Name`, `ca`.`Domain`, `ca`.`Region` FROM `ukonsu1`.`Session` as `se` LEFT JOIN `ukonsu1`.`User` as `us` ON `se`.`User_ID` = `us`.`User_ID` LEFT JOIN `ukonsu1`.`Classificator_City` as `cl` ON `us`.`City` = `cl`.`City_ID` LEFT JOIN `ukonsu1`.`Catalogue` as `ca` ON `us`.`Region` = `ca`.`Region` WHERE `se`.`SessionTime`>".time()." AND `us`.`User_ID` >0 ORDER BY `se`.`SessionTime` DESC, `us`.`Rate` ASC LIMIT 10","
<tr>
<td valign='top' class='list_experts'>
<img border='0' src='".($data[Photo] ? $data[Photo] : '/assets/images/expert_no_avatar_small.gif')."' class='face' width='55' height='55' alt='\$data[Name]' /><br>On-line
</td>
<td valign='top' class='list_experts'><a href='http://\$data[Domain]/expert/expert_\$data[User_ID].html'><b>\$data[Name]</b></a><div class='wi11'>город: <a href='http://\$data[Domain]/'>\$data[City_Name]</a></div></td>

<td class='list_experts' align='center'>\$data[Rate]</td>
<td class=''></td>
</tr>")."

но во-первых не отображаются картинки, а во-вторых выдается список сессий... а это уже не то, ибо не чистится потом сам (после ухода пользователя с сайта) и дублируется при заходе пользователя под другим браузером... а старые не удаляются... Как написать?не уверен
04.06.2010, 07:52
Ответить | Цитировать
Sape
sitkoru

Зарегистрирован:
2010-03-09
Сообщений: 5

всё сделала, может пригодится кому.
Код:
<table>
".listQuery("SELECT
*
FROM `ukonsu1`.`User` as `u` LEFT JOIN `ukonsu1`.`Classificator_City` as `cl` ON `u`.`City` = `cl`.`City_ID` LEFT JOIN `ukonsu1`.`Catalogue` as `ca` ON `u`.`Region` = `ca`.`Region`
WHERE
`u`.`Login` IN (".nc_auth_users_online($users).")
ORDER BY
`u`.`Rate` DESC","
<tr>
<td valign='top' class='list_experts'>
<img border='0' src='\$data[Photo]' ".$current_catalogue[Photo]." width='55' height='55' alt='\$data[Name]' />
<br>On-line
</td>
<td valign='top' class='list_experts'><a href='http://\$data[Domain]/expert/expert_\$data[User_ID].html'><b>\$data[Name]</b></a><div class='wi11'>город: <a href='http://\$data[Domain]/'>\$data[City_Name]</a></div></td>

<td class='list_experts' align='center'>\$data[Rate]</td>
<td class=''></td>
</tr>
")."<br>
</table>



<<
Код:
`u`.`Login` IN (".nc_auth_users_online($users).")
>> Берем из базы тех кто онлайн используя неткатовскую функцию
Код:
".nc_auth_users_online($users)."

$users в шаблонах вывода навигации пишем:
Код:
$users['prefix'] = "";
$users['suffix'] = "";
$users['divider'] = ",";
$users['link'] = "'%NAME'";


Единственно это то что аватарки в списке не те отображаются... но можно и без них )
04.06.2010, 07:57
Ответить | Цитировать
malich
Андрей Малков

Зарегистрирован:
2005-08-09
Сообщений: 522

Так аватарки нужно выводить через функцию nc_file_path

Код:
\".nc_file_path(User, \$data[User_ID], Photo).\"
04.06.2010, 08:27
Ответить | Цитировать
Sape
sitkoru

Зарегистрирован:
2010-03-09
Сообщений: 5

Спасибо огромное!улыбка
198 196 2010-06-04 08:27:18 10489
Описание проекта