日期:2010-05-20  浏览次数:20835 次

  功能:显示当前网页在线人数和IP地址。

  方法:把当前的网页在线IP地址存入People.asp中,每过一分钟自动刷新一次,用来统计当前网页的在线人数和IP地址。
   
  1:把当前的在线IP地址和访问时间存入ly数组中。

  Set ThisFile=StreamF.OpenTextFile(CountFile,1,False)
  Countly=0
  do while not ThisFile.AtEndOfStream
  Thisline = ThisFile.readline
  '使用了 Preserve 关键字,就只能调整数组最后维的大小,并且不能改变数组的维数。
  '数组只有一维,该维是最后的也是仅有的一维,就可以修改该数组的大小.
  Redim preserve ly(Countly)
  ly(Countly) = Thisline
  'Countly 记载这ThisFile的行数
  Countly = Countly + 1
  loop
  ThisFile.Close
  
  2:开始刷新访问当前网页IP地址

  sj中存的当前的系统时间
  sameip=0
  for i=1 to (Countly-1)/2
  '取得 偶数列
  '如果在刚才统计的在线IP地址和当前的时间超过了一分钟,则上出该IP
  if DateDiff("s",ly(i*2),sj)>60 then
  ly(i*2-1)=""
  ly(i*2)=""
  Countly=Countly-2
  end if
  
  '获取刚才在线的IP地址,如果现在还在线
  'Request.ServerVariables("REMOTE_ADDR") 获得发出请求机器的IP
  if Request.ServerVariables("REMOTE_ADDR")=ly(i*2-1) then
  sameip=1
  ly(i*2)=sj
  end if
  next
  
  3:将最新的访问当前网页的IP地址存入People.asp

  '开始向People.asp这个文件写数据
  set OutFile=StreamF.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