帝国cms调用会员名及投稿数量排名

时间:2024年03月06日

/

来源:网络

/

编辑:佚名

1、调用会员发布文章数
  <table>
 [e:loop={'SELECT userid, username, count(username) as total from [!db.pre!]ecms_news group by username order by total desc',0,24,0}]  
<tr>  
<td><?=$bqno?></td>  
<td><?=$bqr[username]?></td>  
<td><?=$bqr[total]?></td>  
</tr>
 [/e:loop]  
</table>
全选代码复制
2、只调用会员发布文章数,增加(序号、会员id)
  <table>  
<tr>  
<td>排名号</td>  
<td>会员名</td>  
<td>文章数</td>  
<td>会员ID</td>  
</tr>  
[e:loop={'select userid, username,count(username) as num from [!db.pre!]ecms_news group by username order by num desc',0,24,0}]  
<tr>  
<td><?=$bqno?></td>  
<td><?=$bqr[username]?></td>  
<td><?=$bqr[num]?></td>  
<td><?=$bqr[userid]?></td>  
</tr>  
[/e:loop]  
</table>
注释:在sql语句“ SELECT userid, username, count(username) as total from [!db.pre!]ecms_news group by username order by total desc ”
中的“(username)”和“group by username”中的 “username”也能用 “userid” 调用 但会出项一个问题就是 管理员的ID会与前台会员的ID重复
即:管理员的ID=1,前台会员的ID=1(所以管理员的ID=前台会员的ID),最后统计出来的文章会是:管理员+前台会员=总数
月排行
  where newstime > UNIX_TIMESTAMP()-86400*30 (月:30、周:7)
举例:月排行
  <table>
<tr>
<td>排名号</td>
<td>会员名</td>
<td>文章数</td>
<td>会员ID</td>
</tr>  
[e:loop={'select userid, username,count(username) as num from [!db.pre!]ecms_news where newstime > UNIX_TIMESTAMP()-86400*7 group by username order by num desc',0,24,0}]  
<tr>
<td><?=$bqno?></td>
<td><?=$bqr[username]?></td>
<td><?=$bqr[num]?></td>
<td><?=$bqr[userid]?></td>
</tr>  
[/e:loop]  
</table>
猜你需要

豫ICP备2021026617号-1  豫公网安备:41172602000185   Copyright © 2021-2028 www.78moban.com/ All Rights Reserved

本站作品均来自互联网,转载目的在于传递更多信息,并不代表本站赞同其观点和对其真实性负责。如有侵犯您的版权,请联系 1565229909#qq.com(把#改成@),我们将立即处理。