| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1001 人关注过本帖, 1 人收藏
标题:网站访问统计
只看楼主 加入收藏
skybolt
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-9-4
收藏(1)
 问题点数:0 回复次数:8 
网站访问统计
index.asp内容:
网站统计

<%
Function rstj()
 dim fso,f1,ts,s
 Const ForReading=1
 Set fso=CreateObject("Scripting.FileSystemObject")
 Set ts=fso.OpenTextFile(Server.MapPath("rstj.txt"),ForReading,true,-2)
 s=ts.Readline
 ts.close
 set fso=createobject("scripting.filesystemobject")
 set f1=fso.createtextfile(server.mappath("rstj.txt"),true,true)
 f1.writeline s+1
 f1.close
 Set ts=fso.OpenTextFile(Server.MapPath("rstj.txt"),ForReading,true,-2)
 s=ts.Readline
 rstj=s
 ts.close
End Function
%>

您是第<%=rstj%>位访问的朋友

rstj.txt 内容
0

这是一个简单的网页流量统计文件,如何修改成只有第一次访问它才加1,刷新不加?

[[it] 本帖最后由 skybolt 于 2008-9-11 20:11 编辑 [/it]]
搜索更多相关主题的帖子: 统计 访问 
2008-09-11 17:56
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
收藏
得分:0 
那就只能更改记录点击次数为记录IP数
2008-09-11 20:39
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
或者写Cookie或者Session,总之是一个和访问统计这个具体问题关系不大的问题。
2008-09-11 23:07
skybolt
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-9-4
收藏
得分:0 
昨天好好想了一下,问题已解决
网站统计
index.asp源代码修改如下,可以防止刷新。
<%
Function rstj()
 dim fso,f1,ts,s
 Const ForReading=1
 Set fso=CreateObject("Scripting.FileSystemObject")
 Set ts=fso.OpenTextFile(Server.MapPath("rstj.txt"),ForReading,true,-2)
 s=ts.Readline
 ts.close
 set fso=createobject("scripting.filesystemobject")
 set f1=fso.createtextfile(server.mappath("rstj.txt"),true,true)

 if session("visited")<>"yes" then  '判断是否为初次访问
 f1.writeline s+1      '是,则计数器加1
 session("visited")="yes"  '将此用户标记为已访问
 else  '不是
 f1.writeline s '仍然输出原来的数字  
 end if
 
 f1.close
 Set ts=fso.OpenTextFile(Server.MapPath("rstj.txt"),ForReading,true,-2)
 s=ts.Readline
 rstj=s
 ts.close
End Function
%>

您是第<%=rstj%>位访问的朋友
2008-09-12 08:13
skybolt
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2008-9-4
收藏
得分:0 
回复 3# multiple1902 的帖子
有时候真的不喜欢你这个版主,每次都不帮我修改源代码,浪费我很多时间。但是,他这种友善的提示还是能让我少走许多弯路。感谢!
2008-09-12 08:20
sunfishy
Rank: 3Rank: 3
等 级:论坛游侠
威 望:5
帖 子:311
专家分:163
注 册:2007-6-29
收藏
得分:0 
呵呵.重点在思路!.
2008-09-12 09:32
zhuzhanjun
Rank: 1
等 级:新手上路
帖 子:146
专家分:0
注 册:2008-5-3
收藏
得分:0 
错误类型:
Microsoft VBScript 运行时错误 (0x800A003E)
输入超出了文件尾
/KEN_TEST/Untitled-1.asp, 第 7 行


我用了显示这个错误啊。甚么原因啊

Function rstj()
dim fso,f1,ts,s
Const ForReading=1
Set fso=CreateObject("Scripting.FileSystemObject")
Set ts=fso.OpenTextFile(Server.MapPath("rstj.txt"),ForReading,true,-2)
s=ts.Readline  ---------此处是第七行
ts.close
2008-09-12 10:55
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
[bo][un]skybolt[/un] 在 2008-9-12 08:20 的发言:[/bo]

有时候真的不喜欢你这个版主,每次都不帮我修改源代码,浪费我很多时间。但是,他这种友善的提示还是能让我少走许多弯路。感谢!

呵呵,代码要自己写才能提高水平。别人给你思路就够了。


解答楼上的问题,估计是你的文件里一行内容都没有,这个ReadLine我不常用,一般用fso.getFile(...).OpenAsTextStream.ReadAll将全文件内容读入字符串再处理。至少我习惯这样,你试试。
2008-09-12 13:20
zhuzhanjun
Rank: 1
等 级:新手上路
帖 子:146
专家分:0
注 册:2008-5-3
收藏
得分:0 
用这个方法的话,fso.getFile(...).OpenAsTextStream.ReadAll

可以详细点解答吗?
2008-09-12 14:13
快速回复:网站访问统计
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.039456 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved