第三期提供的ASP计数器还算满意吧?说实话,我不满意。那个计数器有许多缺点:必须做在网页页面中,不开启PWS就根本无法浏览页面;每个需要计数器的地方都要单独做。怎样解决这些问题呢?
  经过一下午的艰苦努力后,我终于做出了一个计数器,写一次就可以到处使用。想看看吗?
  在网站下某个目录中新建几个文件夹,命名为001、002、003等等,并分别放入式样不同的0~9的gif图片。前面已经介绍过,这里不再赘述。
  新建一个ASP文件,这里假设为default.asp,写入以下代码:
<%
on error resume next

LogFile=Request.Item("User")
MaxLength=Request.Item("Length")
width=Request.Item("x")
height=Request.Item("y")
dir=Request.Item("Mode")

file=server.MapPath(".\" & LogFile & ".txt")

set fileacc=server.CreateObject("Scripting.FileSystemObject")
set myFile=fileacc.OpenTextFile(file)
visitors=myFile.readline
myFile.close

'这行用来链接广告,和后面标注的那几行配对使用
Response.Write "document.write(" & chr(34) & "<a href=http://tips.mycool.net target=_blank>" & chr(34) & ");"

'将下面这段代码删去后不注册就可使用
if err<>0 then
    Response.Write "document.write(" & chr(34) & "请注册后再使用" & chr(34) & ");"
    '这行和前面标注的那行配对使用,用来链接广告
    Response.Write "document.write(" & chr(34) & "</a>" & chr(34) & ");"
    Response.End
end if

if session("in")<>LogFile then
    session("in")=LogFile
    visitors=visitors+1
    set myFile=fileacc.CreateTextFile(file)
    myFile.WriteLine(visitors)
    myFile.close
end if

'文本计数器有时候比图形的更好用,不是吗?
if dir="text" then
    Response.Write "document.write(" & chr(34) & visitors & chr(34) & ");"
    '这行和前面标注的那行配对使用,用来链接广告
    Response.Write "document.write(" & chr(34) & "</a>" & chr(34) & ");"
    Response.End
end if

strlength=len(visitors)

for i=1 to MaxLength-strlength
    '这里的“localhost”改为你自己的网站名称
    Response.Write "document.write(" & chr(34) & "<img src=http://localhost/" & dir & "/0.gif height=" & height & "width=" & width & " border=0>" & chr(34) & ");"
next

for i=1 to strlength
    '这里的“localhost”改为你自己的网站名称
    Response.Write "document.write(" & chr(34) & "<img src=http://localhost/" & dir & "/" & mid(visitors,i,1) & ".gif height=" & height & "width=" & width & " border=0>" & chr(34) & ");"
next

'这行和前面标注的那行配对使用,用来链接广告
Response.Write "document.write(" & chr(34) & "</a>" & chr(34) & ");"

set fileacc=nothing
%>
  将以上代码写为一个文本文件,存为default.asp,保存到网站中,这里假设网站名称是localhost,再往网站中传一个文本文件“test.txt”,在网页中写上:
<script src=http://localhost/default.asp?User=test&Length=6&x=15&y=20&Mode=003"></script>
  改变一下User、Length、x或y的值,看看效果,怎么样?想在另一个网页中使用这个计数器?没问题,改一个User,并上传一个对应的文本文件就是另外一个计数器了。还可以通过Length改变计数器的位数,用x、y来改变数字的大小,用Mode改变计数器的图片样式。真正做到“写一次到处可用”了。加上自动注册功能会更好用。
  满意了吗?