当前位置: 首页 > 图文教程 > 网络编程 > ASP > 虹雨的功能较全的计数程序

ASP
ASP中实现限制IP的函数详解
Asp下实现限制IP访问的程序代码
asp下DateDiff 函数参数说明
Highlight patterns within strings
Insert Date and Time into Access
asp下调试程序的debug类
RESPONSE.WRITE和<%=%的区别
用asp实现网页邮箱访问的方法
编写一个含二级目录的源码(Asp+JavaScript)
asp下删除Access数词库中的空记录的sql语句
asp下制做行背景颜色交替变换的表格
asp下将数据库中的信息存储至XML文件中
asp下如何在Access数据库中立即得到所插入记录的自动编号?
asp下如何在ADO服务器端利用好缓存技术?
asp调用Word打印的代码
巧用FileSystem组件实现WEB应用中的本地特定打印的方法
用javascript解决外部数据抓取中的乱码问题
Asp中随机产生用户密码的代码
反SPAM新思路—换Z-BLOG的验证码!
在Z-BLOG可用的新版ASP的GIF验证码[V70404]

ASP 中的 虹雨的功能较全的计数程序


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 246 ::
收藏到网摘: n/a

  这个程序难一点,特点在于,因为他是分别的传送每个图片,所以不像CGI产生的图片那样大。而且图片可以重复的利用所以较率高速度快。只是没有JavaScript就不行了。
程序原代码:


<%
imgurl="http://xxx.xxx.xxx/xxxx/" '图片路径
imgname="xxx" '图片名字
cnt=0
dnt=0
s=Request.ServerVariables("path_translated")
cName = left(s,instrrev(s,"\",len(s)))&"chy.cnt"
dName = left(s,instrrev(s,"\",len(s)))&"dchy.cnt"
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
Set objCountFile = objFSO.OpenTextFile(cName,1,True)
If Not objCountFile.AtEndOfStream Then cnt=CLng(objCountFile.ReadAll)
objCountFile.Close
Set objCountFile=Nothing
cnt=cnt+1
Set objCountFile=objFSO.CreateTextFile(cName,True)
objCountFile.Write cnt
objCountFile.Close
Set objCountFile=Nothing

if application("dntime")<=cint(hour(time())) then
Set objCountFile = objFSO.OpenTextFile(dName,1,True)
If Not objCountFile.AtEndOfStream Then dnt=CLng(objCountFile.ReadAll)
objCountFile.Close
Set objCountFile=Nothing
end if
application("dntime")=cint(hour(time()))
dnt=dnt+1
Set objCountFile=objFSO.CreateTextFile(dName,True)
objCountFile.Write dnt
objCountFile.Close
Set objCountFile=Nothing
Set objFSO = Nothing
Response.Write "document.write('99?7?10???"
for i=1 to len(cnt)
Response.Write "<img src="/upload/tech/20091103/20091103102544_d9fc5b73a8d78fad3d6dffe419384e70.gif">"
next
Response.Write "
?????"
for i=1 to 4-len(dnt)
Response.Write "<img src="/upload/tech/20091103/20091103102544_9c838d2e45b2ad1094d42f4ef36764f6.gif">"
next
for i=1 to len(dnt)
Response.Write "<img src="/upload/tech/20091103/20091103102545_b73ce398c39f506af761d2277d853a92.gif">"
next
t=(cint(day(date()))*24+cint(hour(time())))*60+cint(minute(time()))
k=0
i=1
y=0
Do While application("zxip"&i)<>""
if application("zxip"&i)=Request.ServerVariables("REMOTE_ADDR") then
application("zxsj"&i)=t
y=1
end if
if t-application("zxsj"&i)>9 or t<application("zxsj"&i) then
k=k+1
else
if k>0 then
application.lock
application("zxip"&i-k)=application("zxip"&i)
application("zxsj"&i-k)=application("zxsj"&i)
application.unlock
end if
end if
if k>0 then
application.lock
application("zxip"&i)=""
application.unlock
end if
i=i+1
loop
if y=0 then
application("zxip"&i)=Request.ServerVariables("REMOTE_ADDR")
application("zxsj"&i)=t
else
i=i-1
end if
Response.Write " ?????"
if len(i)=1 then Response.Write "<img src="/upload/tech/20091103/20091103102544_9c838d2e45b2ad1094d42f4ef36764f6.gif">"
for j=1 to len(i)
Response.Write "<img src="/upload/tech/20091103/20091103102546_5807a685d1a9ab3b599035bc566ce2b9.gif">"
next
Response.Write "');"%>