一个完美的计数器(怎样防止用户刷新页面时加1)

计数器|刷新|页面

大家好!
今天我想谈谈一个网页的计数器问题,有些网站的计数器在用户刷新一次页面时,记数值会加1,这样的计数器是不健全的。如果你的网站搞一些有奖活动,例如,"如果你是第100000个用户你将得到本站提供的奖品"。
所以,下面给出一个计数器的原码,同时你要在这个ASP文件下新建一个counter.txt文件,用于存放记数值。
<%
function counts(counterfile)

dim objfso,objts
application.lock '锁定对象
set objfso=server.createobject("scripting.filesystemobject")
set objts=objfso.opentextfile(server.mappath(counterfile),1,true)
if not objts.atendofstream then '检查是否到达文件结尾
counts=clng(objts.readline)
end if
counts=counts+1
objts.close
set objts=objfso.opentextfile(server.mappath(counterfile),2,true)
objts.writeline(counts)
objts.close
application.unlock '解除锁定
end function

if session("counter")=empty then
session("counter")=counts("counter.txt")
end if
%>

<html>
<body>
您是第<%=session("counter")%>位访客
</body>
</html>
这样一个完美的计数器就做成了。

时间: 2024-08-02 00:00:39

一个完美的计数器(怎样防止用户刷新页面时加1)的相关文章

servlet-Java新人求解答:用js实现关闭或刷新页面时如何保存更改信息?

问题描述 Java新人求解答:用js实现关闭或刷新页面时如何保存更改信息? 如题,我做了一个网站,如下代码,现在的问题是网站可以修改,但是一旦刷新或重新登录后又恢复原状了. 请问改写什么代码才能保存网页修改的信息? <%@ page import ="java.util.*" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <% String path

本机搭建tomcat服务器 架设网站 局域网内用户访问 页面动态加载的数据无法加载

问题描述 本机搭建tomcat服务器 架设网站 局域网内用户访问 页面动态加载的数据无法加载 本机搭建的tomcat服务器,数据库.局域网内用户访问系统页面,ajax动态加载数据无法显示.如图: [用户类型]是ajax动态加载的!本机页面正常,局域网内用户只有页面,没数据! 解决方案 你的代码呢?用chrome开发工具或者firebug看看报错了没有,ajax返回了什么内容. 解决方案二: 浏览器log中有没有错误,ajax打印下返回结果

session-iframe刷新页面时不刷新父页面

问题描述 iframe刷新页面时不刷新父页面 session过期之后刷新页面跳转到登陆页面的时候父页面不刷新,父页面里面包含登录的页面 解决方案 一,iframe刷新父页面? iframe页面是内嵌到父页面的,当点击iframe页面的服务器控件时,默认只刷新iframe页面,父页面是不会刷新的.若想刷新父页面,可以使用js来实现,如 ?1. parent.location.reload(); ?这种方法会重新加载整个页面.但如果要在原页面的基础上传递参数,则可以使用下面的方法: ?2......

js检测离开或刷新页面时表单数据是否更改的方法_javascript技巧

本文实例讲述了js检测离开或刷新页面时表单数据是否更改的方法.分享给大家供大家参考,具体如下: function formIsDirty(form) { for (var i = 0; i < form.elements.length; i++) { var element = form.elements[i]; var type = element.type; if (type == "checkbox" || type == "radio") { if (

在用户离开页面时提示信息

页面 有时候在编辑页面用户做修改后,可能会有刷新.关闭等误操作造成当前页面信息的丢失,何不先提醒一下用户呢?实例代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><title>Confirm Before Leave</title><script language="javascript" t

eclipse-为什么session.isNew()刷新页面后总会返回TRUE

问题描述 为什么session.isNew()刷新页面后总会返回TRUE 小白最近刚接触JSP,在用session对象写一个防刷新计数器时遇到了问题.理想情况下是刷新页面时计数器不+1,仅当关闭浏览器再重新打开时才会+1:可是在Eclipse JavaEE的内部浏览器测试时刷新网页计数器也会+1,不知道出了什么问题,下面贴出代码,恳请各位前辈指教 <%@ page language=""java"" contentType=""text/h

知识:CSS方便地控制用户浏览网页时使用的光标

css|光标|控制|网页 CSS允许你控制网页外观和布局的各个方面--包括字体.页边空白和光标.不错,从CSS 2.1开始,你就可以方便地控制用户浏览网页时使用的光标. 标准的CSS光标呈箭头状,一般来说,它都能满足一个网页或网站的需求,但有些时候你可能需要使用其它的光标.在这些情况下,CSS标准提供了众多选项. CSS光标类型 下表概括说明了CSS标准中的一些光标类型. 默认光标:使用标准的箭头. 手状光标:光标呈手形,食指伸出. 指针状光标:与手状光标相同. 十字线光标:使用十字光标(一个加

window.location.reload()方法刷新页面弹出要再次显示该网页对话框_javascript技巧

用window.location.reload()方法刷新页面时,有时浏览期会出现一个这样的弹出框, 解决办法是: 一: document.location.href = "${base}/rwfp/rwfpcontent" 用这种方法找到页面对应的Action的位置,这样做虽然页面刷新,但是刷新后数据会从第一页开始显示,并不是停留在原来的页面. 二: $("#yhsubmit").click() 这种方法跟分页相关,#yhsubmit为 复制代码 代码如下: &l

js实现刷新页面后回到记录时滚动条的位置【两种方案可选】_javascript技巧

当div中绑定数据,给它一个属性overflow-y: scroll,添加长度大小,使其能够出现滚动条:每次刷新的时候滚动条总是会出现在最上方,这使我很头疼,经过查阅网上资料,返现两种方法可行.如下: 第一种方案 将上一个页面的div的scrolltop距离长度记录在cookie中,然后通过js调整刷新页面时的长度记录,代码如下: js代码: <script> var _h = 0; function SetH(o) { _h = o.scrollTop SetCookie("a&q