私は mysql クエリに関しては比較的初心者なので、頭を噛まないでください。ポーリング拡張機能と Jomsocial を使用して「トップ ポーラー」モジュールを作成しようとしています。作成した投票数の上位 5 人のユーザーを表示したいと考えています。これがデータテーブルの構造です(重要な部分です)
#__users
-id
-name
-username
#_jcp_polls
-created_by (this is the same as #users.id)
#__community_users
-thumb
-avatar
これが私のクエリです
$db = JFactory::getDBO();
$query = "SELECT u.id, u.username, u.name, c.thumb, c.avatar,COUNT(p.created_by) as total
FROM #__users u, #__community_users c, #__jcp_polls p
WHERE u.id = p.created_by
GROUP by u.id
ORDER BY total DESC
LIMIT $user_count
";
$db->setQuery($query);
$rows = $db->loadObjectList();
次のような foreach ループでユーザー テーブル フィールドを表示できます。
foreach($rows as $row){
echo $row->name
}
使えると思っ$row->avatar
たけどダメ。#__community_users
誰かが、テーブルと同様にフィールドを表示できるようにするクエリを提案できますか#__users table
? #__jcp_polls table
?からのランキングを維持します。