ASP程序: 制作一个能够防止自我刷新的网站访问计数器

防止自我刷新!!人民邮电出版社ASP网络应用程序设计教程(第二版)<高怡新编著>第五章课后习题操作题3明天要交了~~急!!... 防止自我刷新!!
人民邮电出版社 ASP网络应用程序设计教程(第二版) <高怡新 编著>
第五章 课后习题操作题3
明天要交了~~急!!
展开
 我来答
102录像导航
2009-04-27 · TA获得超过718个赞
知道小有建树答主
回答量:1072
采纳率:0%
帮助的人:550万
展开全部
用asp制作的一个网站访问计数器,利用网上一个源代码,增加防刷新的功能,小巧好用,感谢原代码作者。

代码如下:

<%
'---------------------------------------------------------------
' 文件名称:count.asp
' 功 能:网站计数器
' 改编作者:法盲
' 作者邮件:famang@sina.com
' 创建日期:星期五,2005年12月23日 08:42:27
' 使用说明:
' 在需要计数的页面添加<!--#include file="count.asp"-->
' 调用read_或者Digital ( counter )函数来显示访问次数
' 系统防页面刷新,期间默认为一个小时,可通过修改DateAdd函数的参数进行
' 系统会自动在count.asp所在目录下创建count.txt来存储访问次数
'--------------------------------------------------------------
%>

<%

dim fs,filename,txt,content,total,counter_lenth
counter_lenth=10 '设置显示数据的最小长度,如果小于实际长度则以实际长度为准
set fs=Server.CreateObject("Scripting.FileSystemObject")
filename=server.MapPath("count.txt")
if not fs.FileExists(filename) then
fs.CreateTextFile filename,True,True
set txt=fs.OpenTextFile(filename,2,true)
txt.write 0 '如不存在保存数据的文件则创建新文件并写入数据0
set fs=nothing
end if

set txt=fs.OpenTextFile(filename)
If txt.AtEndOfStream Then
Application("Counter")=0 '如果文件中没有数据,则初始化Application("Counter")的值(为了容错)
else
Application("Counter")=txt.readline
end if

'判断是否访问过,系统默认一个小时为刷新访问期间,需要客户端支持cookie,可通过更改DateAdd的参数值来更改
if Request.Cookies("countcookie")="" then
Response.Cookies("countcookie")="visited"
Response.Cookies("countcookie").Expires=DateAdd("h", 1, now)
Application.Lock
Application("Counter") = Application("Counter") + 1
Application.UnLock
end if

save_ '调用保存函数保存数据

Function save_ '保存计数函数
set fs=Server.CreateObject("Scripting.FileSystemObject")
filename=server.MapPath("count.txt")
content=Application("Counter")
et txt=fs.OpenTextFile(filename,2,true)
txt.write content
set fs=nothing
End Function

Function Digital ( counter ) '显示数据函数
Dim i,MyStr,sCounter
sCounter = CStr(counter)
For i = 1 To counter_lenth - Len(sCounter)
MyStr = MyStr & "0"
'MyStr = MyStr & "<IMG SRC=改成你自己的图片存放的相对目录\0.gif>" '如有图片,可用此语句调用
Next
For i = 1 To Len(sCounter)
MyStr = MyStr & Mid(sCounter, i, 1)
'MyStr = MyStr & "<IMG SRC=改成你自己的图片存放的相对目录\" & Mid(sCounter, i, 1) & ".gif>" '如有图片,可用此语句调用
Next
Digital = MyStr
End Function

Function read_ '读取计数函数
set fs=Server.CreateObject("Scripting.FileSystemObject")
filename=server.MapPath("count.txt")
set txt=fs.opentextfile(filename,1,true)
total=txt.readline
total=cint(total)
'response.write total
response.write right(Digital (total),4) '调用显示函数
set fs=nothing
End Function

%>

参考资料: http://www.ban102.com.cn/

AiPPT
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图... 点击进入详情页
本回答由AiPPT提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式