연말 통계를 내서 회원들께 공유해드리고 싶습니다.
CMS/프레임워크 | Rhymix 2.0 |
---|---|
개발 언어 | PHP 7.4 |
안녕하세요 2023년까지 하루하고도 30분정도 남았는데 타운 회원여러분 모두 새해 복 많이받으세요
이벤트성으로 한해 글을 제일 많이 작성한 회원, 댓글을 제일 많이 작성한 회원, 추천을 제일 많이 받은 회원등 여러가지로 순위를 매겨서 회원분들께 공유해드리고 싶은데 혹시 관련된 모듈이나, 애드온 혹은 위젯이 있을까요?
CMS/프레임워크 | Rhymix 2.0 |
---|---|
개발 언어 | PHP 7.4 |
안녕하세요 2023년까지 하루하고도 30분정도 남았는데 타운 회원여러분 모두 새해 복 많이받으세요
이벤트성으로 한해 글을 제일 많이 작성한 회원, 댓글을 제일 많이 작성한 회원, 추천을 제일 많이 받은 회원등 여러가지로 순위를 매겨서 회원분들께 공유해드리고 싶은데 혹시 관련된 모듈이나, 애드온 혹은 위젯이 있을까요?
댓글 3
https://xetown.com/tips/1386849
위의 팁을 활용하면 될거 같네요.
둥~ (대충 넷플릭스)
기왕이면 동메달까지 시상합시다.
- 부담이 있을 수 있으니 위젯을 제작해서 쿼리 자체를 회원들에 허용하는 것은 비추이고요. 관리자만 본다든가 해서 1회성으로 결과만 도출한 뒤 회원들에게 공지하는 방식이 좋을 듯합니다.
- 피추천자(문서 부문) Top3는 쿼리가 테이블 join만 나와도 저한텐 복잡해서ㅜ 아래의 소스가 맞을지는 잘 모르겠습니다. 결과값으로 나오는 $top3_voted를 잘 디버깅해보시고 아니다 싶으면 고쳐쓰시든 폐기하시든 하세요~
1. 작성자 Top3
$query = 'SELECT member_srl, COUNT(member_srl) AS articles
FROM documents
WHERE member_srl > 0 AND regdate >= 20220101000000
GROUP BY member_srl
ORDER BY articles DESC
LIMIT 3';
$stmt = $oDB->prepare($query);
$stmt->execute();
$top3_authors = $stmt->fetchAll();
2. 댓글러 Top3
$query = 'SELECT member_srl, COUNT(member_srl) AS replies
FROM comments
WHERE member_srl > 0 AND regdate >= 20220101000000
GROUP BY member_srl
ORDER BY replies DESC
LIMIT 3';
$stmt = $oDB->prepare($query);
$stmt->execute();
$top3_commentator = $stmt->fetchAll();
3. 피추천자(문서 부문) Top3
$query = 'SELECT documents.member_srl, COUNT(documents.member_srl) AS articles
FROM documents
LEFT JOIN document_voted_log ON documents.document_srl = document_voted_log.document_srl
WHERE documents.member_srl > 0 AND document_voted_log.regdate >= 20220101000000 AND document_voted_log.point > 0
GROUP BY member_srl
ORDER BY articles DESC
LIMIT 3';
$stmt = $oDB->prepare($query);
$stmt->execute();
$top3_voted = $stmt->fetchAll();
항상 건강하시고 새해 복 많이받으세요
감사합니다.