Приветствую!
посоветуйте пожалуйста как создать список пользователей как тут http://fungraph.ru/authors
нужно вывести пользователей количество материала имим загруженного
еще желательно определить временные рамки для отсчета
это все нужно чтобы устроить на сайте еженедельные розыгрыши призов
заранее спасибо!!
Комментарии
1. запрос в базу, из таблицы выдергиваете все uid, это id пользователя, который добавил определенную ноду.
2. подсчитываете количество упоминаний для каждого uid'а, так получаете количество опубликованных материалов по каждому пользователю. Осталось узнать кто прячется за uid
3. дергаете по каждому, отличному друг от друга, uid'у из базы users поле name, получаете логины пользователей.
Может и проще есть способ
я сделал подобное при помощи модуля [module=views_groupby]
http://drupal.ru/node/47416
http://content-management-systems.info/drupal/snippet/329
хз может и проще есть.
в пункт 1 добавлю.
надо еще дергать UID со статусом 1. Зачем блочиных считать.
а так все остальное также сделал бы.
И можно не дергать с uid равным 1 и вообще исключая uid'ы администраторов, менеджеров, модераторов сайта
<?php
$nblimit
= 20;$query = 'SELECT u.name, u.uid, count(n.uid) as ccc
FROM {node} n INNER JOIN {users} u ON n.uid = u.uid
WHERE n.type="тип материала"
GROUP BY n.uid ORDER BY ccc DESC'; $result = db_query_range($query, array('user', 0), 0, $nblimit); $list = array();
while ($user = db_fetch_object($result)) {
$list[] = l($user->name,"user/$user->uid")." (материалов на сайте - $user->ccc)";
} $output = theme('item_list', $list, NULL, 'ul', array('id'=>'user_list_', 'class' => 'user_list'));
print($output);
?>