asp用户发表文章统计

我的数据库中有两个表,user和news,用户可以发表文章,但是发表后需要审核(news中的sh=true)才能被看到,现在我要统计一下,按照发表出来(即审核通过的,可以... 我的数据库中有两个表,user和news,用户可以发表文章,但是发表后需要审核(news中的sh=true)才能被看到,现在我要统计一下,按照发表出来(即审核通过的,可以被普通用户浏览到)的文章个数从高到底排序用户名,并列出该用户发表后审核通过的文章个数,请高人指教~ 展开
 我来答
啊布Sama
2008-03-30 · 超过49用户采纳过TA的回答
知道答主
回答量:82
采纳率:0%
帮助的人:0
展开全部
是前台的还是后台的?

如果是要给用户看到的,就是前台的,核心代码如下:
<%
set rs=server.createobject("ADODB.Recordset")
sql="select * from [user] order by [count] desc"
rs.open sql,conn,1,2
if rs.recordcount=0 then response.write("暂无任何用户!<br/>")
if rs.recordcount>0 then
dim i
i=1
do while (not rs.EOF)
response.write(""&rs("name")&"|"&rs("count")&"<br/>")
i=i+1
rs.movenext
loop
end if
rs.Close
set rs=nothing
%>
但这个方法必须在user表格中,也有个count字段.用来存储每个用户的审核通过文章数量.

我大概知道楼主想要表达的意思.但是.在一个sql查询语句中,调用另外一个表格的数据,是可以实现,但是相对来说.并不稳定,而且,得耗费的资源比较大,建议可以在审核文章的那个存储页面中,进行该用户文章数的自动更新,在那个页面中加入:
<%
set rs=server.createobject("ADODB.Recordset")
sql="select * from [news] where [sh]=1 and id="&userid '这里的userid是用户的id或用户名
rs.open sql,conn,1,2
if rs.recordcount=0 then count=0
if rs.recordcount>0 then count=rs.recordcount
rs.close
set rs=server.createobject("adodb.recordset")
sql="select * from [user] where id="&userid
rs.open sql,conn,1,3
rs("count")=count
rs.update
rs.close
set rs=nothing
%>

推荐这样能在各个审核页面中对文章个数数据进行更新.这样也能让前台的代码更省事,只是后台的代码稍微复杂点而已.
具体的楼主自己可以修改,这只是局部代码.

以上属于个人观点.由于回答有点仓促.可能有错误.班门弄斧了!呵.不好意思啊.高手看见了.如有错误也请提出!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式