答案: 文 本 计 数 器
功能:所有访问过本网页的IP地址
实现方法:把所有访问过本网页的IP地址存放在Count.Asp中,每过一段时间,查看一下,登陆到本网站的IP地址,如果在Count.ASP中不存在,说明这个用户以前没有来过,加入到Count.asp,如果已经存在,则说明该用户以前已经登陆过本网站,可以忽略。
1:获得访问过本网页的IP地址,存入OLdIP数组中
CountFile=Server.mappath("Count.Asp")
Set StreamF=CreateObject("Scripting.FileSystemObject")
dim OldIP()
Set ThisFile=StreamF.OpenTextFile(CountFile,1,False)
do while not ThisFile.AtEndOfStream
Thisline = ThisFile.readline
'使用了 Preserve 关键字,就只能调整数组最后维的大小,并且不能改变数组的维数。
'数组只有一维,该维是最后的也是仅有的一维,就可以修改该数组的大小.
Redim preserve OldIP(Countly)
OldIP(Countly) = Thisline
'Countly 记载这ThisFile的行数
Countly = Countly + 1
loop
ThisFile.Close
2:开始检查当前访问者是否把当前的IP地址加入到Count.ASP中,用OLDIP数组来判断
Flage =1
ArriveIP = Request.ServerVariables("REMOTE_ADDR")
'Response.Write ArriveIP
for I = 1 to Countly
'Request.ServerVariables("REMOTE_ADDR") 获得发出请求机器的IP
if (ArriveIP = OldIP(I-1)) then
Flage=0
end if
next
3:如果当前的IP步在Count.asp中,加入到Count.asp,判断是否加入到Count.asp是根据2中的Flags来判断
Set WriteF = StreamF.OpenTextFile(CountFile, 8, 0)
if Flage=1 Then
Countly = Countly +1
WriteF.WriteLine ArriveIP
End if
WriteF.Close
4:显示访问过本网页的IP地址
<%
Set ThisFile=StreamF.OpenTextFile(CountFile,1,False)
do while not ThisFile.AtEndOfStream
Thisline = ThisFile.readline
Response.Write ThisLine&chr(13)
loop
ThisFile.Close
%>
上一个:让网站活起来(3)
下一个:让网站活起来(1)