您的位置:程序门 -> .net技术 -> c#



关于页面刷新的问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


关于页面刷新的问题
发表于:2007-04-01 16:33:26 楼主
对于单独一个网页
我想统计访问一下人数
在page_load里,每次打开就在数据库里加一
但是按按f5刷新,数据库会一直增加

请问:如何辨别刷新?
发表于:2007-04-01 16:38:291楼 得分:0
sf   &   up
发表于:2007-04-01 16:48:142楼 得分:0
不知道。可不可以把超连接用个linkbutton来显示,在onclick事件里执行+1,再response.redirect跳到那个页面。
发表于:2007-04-01 16:50:563楼 得分:0
不用辨别刷新,你就每进入一次就往数据库里写一个数,每次刷新会再次加一个的
发表于:2007-04-01 16:57:254楼 得分:0
up
发表于:2007-04-12 12:59:025楼 得分:0
我就是不想每刷新一次加一....
发表于:2007-04-12 13:10:116楼 得分:0
session里面做个标记
发表于:2007-04-12 13:14:467楼 得分:0
获取ip或者网卡标识就可以了
发表于:2007-04-12 13:16:198楼 得分:0
在session或cookie做一个标记,如:
if(session[ "isrefresh "]==null)
{
        //添加统计代码
        session[ "isrefresh "]=true;
}
发表于:2007-04-12 13:25:049楼 得分:0
加个cookie吧
发表于:2007-04-12 13:49:4110楼 得分:0
session或者viewstate做个判断
发表于:2007-04-12 14:04:4311楼 得分:0
楼主的意思是如果同一ip刷新两次,不算两人?

服务器端:可以通过session判断用户的request.userhostaddress来判断
缺点:用户可以用代理等方式上网改变ip

客户端:可以通过写cookie或者viewstate解决
缺点:用户可以把cookie删除或者关闭网页再重新访问
发表于:2007-04-12 15:52:4812楼 得分:0
在项目的globla.asrc(忘了具体名字了)里写吧。修改application_star和application_end

可在项目里添个.txt文件记录登陆次数,通过读写文本内容来达到目的
发表于:2007-04-12 16:25:1213楼 得分:0
用cookie记录,当用户访问本页面时,在page_load中读取cookie,如果没有cookie,就建立一个cookie,并将一个值写入cookie,同时写库一次;如果有cookie,就认为用户已经访问过页面了,不写cookie.
if(request.cookies[ "count "]==null)
{
    //写一cookie  
    //入库一次
}
else
{
     

}
发表于:2007-04-12 16:31:3114楼 得分:0
感觉还是用session好
发表于:2007-04-12 16:37:1615楼 得分:0
加cookie,判断在24小时内如果用户重复的进入,只算访问一次
发表于:2007-04-12 16:39:4416楼 得分:0
request.userhostaddress客户端ip加session来判断!
发表于:2007-04-12 16:41:4817楼 得分:0
session会增加对服务器资源的浪费,服务器吃不消,虽然cookie不怎么安全,但我觉得还是用cookie好
发表于:2007-04-12 20:42:1618楼 得分:0
cookie好!!!!
发表于:2007-04-12 21:05:5619楼 得分:0
刷新就是一次连接
发表于:2007-04-12 21:18:1820楼 得分:0
两种方法,加1的时候,判断一下,当前有没有加过,当然这里要有一个唯一示识,你可以采用请求的d,因为每一个请求都会生成一个唯一标识,不行可以采用ip来识别.

另一种方法就是比较难一点,处理httphandle,在底层实现.
发表于:2007-04-12 22:18:5421楼 得分:0
single...标识
发表于:2007-04-13 10:05:4422楼 得分:0
采用ip来判断当然设定一个session值也可以,不过看新浪blog似乎都没有判断refresh


快速检索

最新资讯
热门点击