ASP利用FSO打造最简单的访问计数器

设计思路:
用一个记事本counter.txt,并在其中记录访问的次数。每次访问将里面的数字加1并保存。

实现方法:
用FSO打开记事本counter.txt,如果不存在则新建。读取其中的数据,赋值给一个变量,如果不存在则设置初始值为零。将数值写入记事本counter.txt

首先新建一个counter.asp文档,输入下面的代码,单引号后面的是注释

<%
set fs=Server.CreateObject("Scripting.FileSystemObject")
File = Server.MapPath("counter.txt")
Set txtr = fs.OpenTextFile(File,1,true)'打开只读文件file,如果不存在则新建
counter=0'将计数器归零
If Not txtr.atEndOfStream Then'先确定还没有到达结尾的位置
Line = txtr.ReadLine '读取一行数据
else
line=0 '否则设置初始值为0
End If
counter=line+1 '计数加1
set txtw = fs.opentextfile(file,2,true) '打开只写文件file
txtw.write counter '写入计数
response.Write("<center>您是第<b>"&counter&"</b>位访客!</center>")
'输出计数
%>

在需要统计和显示计数的地方可以用include的方式引入这个文档。

<!--#include file="counter.asp"-->

本站测试地址:http://www.icoa.cn/demo/counter.asp

但是如果是html之类静态页面,则可以通过script脚本的方式来使用这个简单的计数器。

那么Counter.asp则需要这么写了:

<%
set fs=Server.CreateObject("Scripting.FileSystemObject")
File = Server.MapPath("counter.txt")
Set txtr = fs.OpenTextFile(File,1,true)'打开只读文件file,如果不存在则新建
counter=0'将计数器归零
If Not txtr.atEndOfStream Then'先确定还没有到达结尾的位置
Line = txtr.ReadLine '读取一行数据
else
line=0 '否则设置初始值为0
End If
counter=line+1 '计数加1
set txtw = fs.opentextfile(file,2,true) '打开只写文件file
txtw.write counter '写入计数
response.Write("document.write(""<center>您是第<b>"&counter&"</b>位访客!</center>"");")
'输出计数,两个""代表输出一个"
%>

需要引用的html静态页里可以通过Script脚本来使用计数器:

<script src="counter.asp"></script>

“ASP利用FSO打造最简单的访问计数器”的一个回复

评论已关闭。