当前位置: 首页 > 图文教程 > 网络编程 > ASP > 一个实用的FSO-实时统计在线人数

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 中的 一个实用的FSO-实时统计在线人数


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

 

count.asp:

<%Server.ScriptTimeout=300
id=Trim(Request.QueryString("id"))
fc=Trim(Request.QueryString("fc"))
if fc="" then fc="FFFF00"
bg=Trim(Request.QueryString("bg"))
if bg="" then bg="000000"
bc=Trim(Request.QueryString("bc"))
if bc="" then bc="00FF00"
sername=Request.ServerVariables("SERVER_NAME")
scrname=Request.ServerVariables("SCRIPT_NAME")
linkurl="http://" & sername & scrname
%>
<html>
<head>
<title>实时统计在线人数</title>
<META HTTP-EQUIV="Refresh" content="10; URL=<%=linkurl%>">       '每隔10秒刷新
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style TYPE="text/css">
<!--
P {FONT-SIZE: 9pt; font-color: #eeeeee}
A {TEXT-DECORATION: none}
A:link {COLOR: #0068A3}
A:visited {COLOR: #0068A3}
A:hover {COLOR: #2f00ff; TEXT-DECORATION: underline}
.ourfont {font-size: 9pt }
BODY { FONT-SIZE: 9pt}
TABLE { FONT-SIZE: 9pt}
-->
</style>
</head>
<%
countfile=server.mappath("people.asp")
Set fs=CreateObject("Scripting.FileSystemObject")
n=Year(date())
y=Month(date())
r=Day(date())
s=Hour(time())
f=Minute(time())
m=Second(time())
if len(y)=1 then y="0" & y
if len(r)=1 then r="0" & r
if len(s)=1 then s="0" & s
if len(f)=1 then f="0" & f
if len(m)=1 then m="0" & m
sj = n & "-" & y & "-" & r & " " & s & ":" & f & ":" & m
            '格式化日期、时间
dim ly()
Set thisfile=fs.OpenTextFile(countfile,1,False)
countly=0
do while not thisfile.AtEndOfStream
thisline = thisfile.readline
Redim preserve ly(countly)
ly(countly) = thisline
countly = countly + 1
loop                '将people.asp中内容读到数组中
thisfile.close
sameip=0
for i=1 to (countly-1)/2
if DateDiff("s",ly(i*2),sj)>60 then
ly(i*2-1)=""
ly(i*2)=""
countly=countly-2
end if
if Request.ServerVariables("REMOTE_ADDR")=ly(i*2-1) then
sameip=1                 'IP已经存在
ly(i*2)=sj
end if
next
set outfile=fs.CreateTextFile(countfile)
for i=0 to countly-1
if ly(i)<>"" then
outfile.WriteLine ly(i)
end if
next
if sameip=0 then
outfile.WriteLine Request.ServerVariables("REMOTE_ADDR")
outfile.WriteLine sj  '添加新记录
outfile.Close
end if
Set thisfile=fs.OpenTextFile(countfile,1,False)
countly=0
do while not thisfile.AtEndOfStream
thisline = thisfile.readline
Redim preserve ly(countly)
ly(countly) = thisline
countly = countly + 1
loop
thisfile.close
total=(countly-1)/2     '统计总人数
%>
<body>

<p><select name="Online" size="1">
 <option selected value="Online"><%=total%>人在线上</option>
<%
for i=1 to total
response.write "<option>"&ly(i*2-1)&"</option>"
next
%>
</select></p>
</body>
</html>

people.asp:

<%Response.end%>
172.16.20.230'用户IP
2003-06-15 09:53:57'登录时间