手记

首页显示总访问量、总点击量和修改在线人数功能-科讯CMS

怎么样在首页显示总访问量、总点击量和修改在线人数功能呢

先说思路:

  1、科汛自带的统计功能中有每日的IP数和PV数,只需将取它们其一求和,这样就是总访问量了,具体取哪个,就由自己定了,IP数小,但精准,PV数大,但刷新的也算在内了。我爱面子,所以取大的,PV值。

  2、科汛自带的文章统计功能中有每篇文章的点击数,依上所言,将每篇文章的点击数求和就是总点击数了

  3、如果在首页显示在线人数,并且每个页面下面都调用了科汛的统计标签,那么每刷新一下首页都会增加两次访问量了,因为首页调用了两次统计,所以得对在线人数处的统计进行改造一下了。




  思路有了,再说过程:

有两种方法,ASP方式下的方法只适用于ASP,不适用于HTML,HTML方式下的方法适用于ASP和HTML两种方式。

如果是动态的ASP方式,打开KS_CLS下的kesion.label.commoncls.asp,找到869行找到     GetSiteCountAll = GetSiteCountAll & "<li>在线人数: <script language=""javascript"" src=""" & DomainStr & "KS_Inc/SiteCount.asp?ID=3""></script> 人</li>" & vbcrlf
根据你在显示的位置在其上面或下面直接添加

   GetSiteCountAll = GetSiteCountAll & "<li>总访问量: " & Conn.Execute("Select Sum(Pageview) From KS_SiteCount")(0) & " 次</li>" & vbcrlf

   GetSiteCountAll = GetSiteCountAll & "<li>总点击数: " & Conn.Execute("Select Sum(Hits) From KS_Article")(0) & " 次</li>" & vbcrlf

然后在你的首页适当的位置调用统计标签 GetSiteCountAll就行了。

当然,如果你怕以后生成HTML再改麻烦,也可以直接按下面的HTML修改,一样在ASP方式下可以使用

如果用的是HTML方式,这种方法运行也正常,就是不能动态更新访问量和点击数了,后来从科汛的文章内容页面点击数受到启示,增加一个ASP文件,用JS调用方式实现了

  1、在KS_INC目录下新建一个SiteCount.asp文件,内容如下:

<!--#include file="../Conn.asp"-->
<%
If CInt(Request.Querystring("id")) = 1 And Trim(Request.Querystring("id")) <> "" Then
Response.Write "document.write('" & Conn.Execute("Select Sum(Pageview) From KS_SiteCount")(0) & "');"
ElseIf CInt(Request.Querystring("id")) = 2 And Trim(Request.Querystring("id")) <> "" Then
Response.Write "document.write('" & Conn.Execute("Select Sum(Hits) From KS_Article")(0) & "');"
ElseIf CInt(Request.Querystring("id")) = 3 And Trim(Request.Querystring("id")) <> "" Then
Response.Write "document.write('" & Conn.Execute("Select Count(*) from KS_Online")(0)+5 & "');"
End If
%>

  这样,第一段是取网站总访问量,第二段取总点击数,第三段是取当前在线人数并加5(可以改,好面子,没办法),这样是只取在线人数,不向系统写入增加访问次数,以免在首页重复增加访问次数,造成刷新一下首页增加两次访问次数的现象。

  2、打开KS_CLS下的kesion.label.commoncls.asp,找到869行

    GetSiteCountAll = GetSiteCountAll & "<li>在线人数: <script language=""javascript"" src=""" & DomainStr & "KS_Inc/online.asp?ID=1""></script> 人</li>" & vbcrlf

根据你要显示的位置在它的上面或下面添加

   GetSiteCountAll = GetSiteCountAll & "<li>总访问量: <script language=""javascript"" src=""" & DomainStr & "KS_Inc/SiteCount.asp?ID=1""></script> 次</li>" & vbcrlf

    GetSiteCountAll = GetSiteCountAll & "<li>总点击数: <script language=""javascript"" src=""" & DomainStr & "KS_Inc/SiteCount.asp?ID=2""></script> 次</li>" & vbcrlf

并将     GetSiteCountAll = GetSiteCountAll & "<li>在线人数: <script language=""javascript"" src=""" & DomainStr & "KS_Inc/online.asp?ID=1""></script> 人</li>" & vbcrlf

改成     GetSiteCountAll = GetSiteCountAll & "<li>在线人数: <script language=""javascript"" src=""" & DomainStr & "KS_Inc/SiteCount.asp?ID=3""></script> 人</li>" & vbcrlf

这样就大功告成了,在你的首页适当的位置调用统计标签 {$GetSiteCountAll}就行了,最后别忘了,在你的每个页面调用一下统计标签{$GetSiteOnline},不然访问总数不会增加的哦,最好的方法是在页面底部标签中调用,这样方便。

说明一下,总点击数只统计了文章模块,如需统计别的模块,请自行修改。

另外,可以打开数据库KS_SiteCount表,找到Pageview字段,可以修改一个任何数字,增大自己的初始数值。


0人推荐
随时随地看视频
慕课网APP