如何在网页上增加点击/访问次数

时间:2014-02-04 10:36:57

标签: javascript jquery .net cookies

我有一个博客网站,每个页面上都有一个显示该页面访问总次数的博客网站。计算出每次页面加载后,异步调用都会发送到服务器,该服务器会将帖子的匹配增加到+1

但问题是,如果我不断更新页面,它会不断增加计数器。但我想让它变得有点透明,只为独特的访客增加。

我应该记录过去10或25位访客的IP,并检查访客是否最近来访。

或者我应该存储cookie并读取cookie是否存在而不是增加?

3 个答案:

答案 0 :(得分:0)

这在很大程度上取决于您希望数据的准确程度。如果它应该只是一个简单的小计数器,设置一个cookie就可以了。请注意,这很容易伪造,因为您可以在删除cookie后回来。

存储IP地址也很容易伪造,并且它还包括对数据库的额外负载。对于单个路由器后面的多个用户来说,这也是一个问题,共享相同的IP地址。

我认为最软化的方法是使用像http://piwik.org/这样的分析工具,并使用其API来获取特定网页上的唯一身份用户数。根据你打算做的事情,可能会有点慢和略微矫枉过正。

答案 1 :(得分:0)

我会设置一个cookie,它会在一天之后或任何时候到期,但也会让用户选择停用cookie,在这种情况下,您需要记录IP。

答案 2 :(得分:0)

尝试类似下面代码的内容。

<%@ page import="java.io.*,java.util.*" %>

<html>
<head>
<title>Applcation object in JSP</title>
</head>
<body>
<%
    Integer hitsCount = 
      (Integer)application.getAttribute("hitCounter");
    if( hitsCount ==null || hitsCount == 0 ){
       /* First visit */
       out.println("Welcome to my website!");
       hitsCount = 1;
    }else{
       /* return visit */
       out.println("Welcome back to my website!");
       hitsCount += 1;
    }
    application.setAttribute("hitCounter", hitsCount);
%>
<center>
<p>Total number of visits: <%= hitsCount%></p>
</center>
</body>
</html>