Список пользователей и количество их материалов

Прислано: bnine

вт, 20/07/2010 - 18:09

Приветствую!
посоветуйте пожалуйста как создать список пользователей как тут http://fungraph.ru/authors
нужно вывести пользователей количество материала имим загруженного

еще желательно определить временные рамки для отсчета

это все нужно чтобы устроить на сайте еженедельные розыгрыши призов

заранее спасибо!!

Комментарии


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Применить"
Опубликовано Splinter в вт, 20/07/2010 - 18:16.

1. запрос в базу, из таблицы выдергиваете все uid, это id пользователя, который добавил определенную ноду.
2. подсчитываете количество упоминаний для каждого uid'а, так получаете количество опубликованных материалов по каждому пользователю. Осталось узнать кто прячется за uid
3. дергаете по каждому, отличному друг от друга, uid'у из базы users поле name, получаете логины пользователей.

Может и проще есть способ


Опубликовано RayB в ср, 21/07/2010 - 00:18.

я сделал подобное при помощи модуля  views_groupby
http://drupal.ru/node/47416


Опубликовано bnine в ср, 21/07/2010 - 17:00.

RayB написал(а):

я сделал подобное при помощи модуля  views_groupby
http://drupal.ru/node/47416

Пытаюсь добавить поле во вьюс - получаю ошибку

Error: handler for views_groupby > views_sql_groupedfields doesn't exist!


Опубликовано Splinter в ср, 21/07/2010 - 17:08.

http://content-management-systems.info/drupal/snippet/329


Опубликовано iHappy в ср, 21/07/2010 - 17:33.

"Splinter" написал(а):

1. запрос в базу, из таблицы выдергиваете все uid, это id пользователя, который добавил определенную ноду.
2. подсчитываете количество упоминаний для каждого uid'а, так получаете количество опубликованных материалов по каждому пользователю. Осталось узнать кто прячется за uid
3. дергаете по каждому, отличному друг от друга, uid'у из базы users поле name, получаете логины пользователей.
Может и проще есть способ

хз может и проще есть.
в пункт 1 добавлю.
надо еще дергать UID со статусом 1. Зачем блочиных считать.
а так все остальное также сделал бы.


Опубликовано Splinter в ср, 21/07/2010 - 18:12.

И можно не дергать с uid равным 1 и вообще исключая uid'ы администраторов, менеджеров, модераторов сайта


Опубликовано Arturus в ср, 09/03/2011 - 12:03.

<?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'$listNULL'ul', array('id'=>'user_list_''class' => 'user_list'));
print(
$output);
?>


Ссылки партнёров