首  页
站长信箱
868搜索
网站登录
免费计数器
免费留言本
IP来源查询
网站技术教程
网站流量统计
文章探索:   分类:    关键字:  
    什么?你还在找兼职?上兼客吧,现在兼客吧平台太火了,知名度和诚信度也很高,注册就送0.5元现金,满3元就能提现,马上到账了!最低3元就能提现,大家可以注册下试试!注册地址:http://www.jiankeba.com/computeryc1688
  + 栏目导航
  + 相关文章
ASP导出Excel数据的四种方法
ASP漏洞及安全建议来源
XMLHTTP.readyState的五种状态
xmlhttp status 各类值说明
Asp中ByVal传值与ByRef传值的问..
ASP技巧:判断远程图片是否存在
asp中有关字符编码转换的几个函..
绝妙的asp生成静态页面html函数
Asp计算页面执行时间
一个简单的用存储过程分页
将asp页面转换成htm页面
ASP网站漏洞解析及黑客入侵防范..
URL编码与SQL注入
几种常用排序算法(asp)
ASP调用带参数存储过程的几种方..
实用的ASP连接数据库的函数
ASP如何获取真实IP地址
ASP中怎么实现SQL数据库备份、..
判断Cookies是否处于开启状态
怎样才能将服务器端文件夹下的..
几行Asp代码实现防止表单重复提..
用ASP设计网站在线人数统计程序
asp论坛在线人数统计研究
如何用ASP远程在数据库中创建Ta..
用ASP调用SQL Server的视图和存..
Asp与XML的关系
ASP读取EXCEL
在ASP中使用Oracle数据库技巧
一个通过web.Mail发送邮件的类
几种打开记录集方式的比较

技术教程 -> ASP教程 ->  
asp论坛在线人数统计研究
来源:转载   人气:4565   录入时间:2006/5/21


     最近用ASP做了一个小论坛,客户又要求要统计在线人数,所以花了点时间写一个在线统计访会员的功能。写的过程中也查看了许多文档。自我感觉用的方法能比较准确的统计在线人数。当然一定也有不足的地方,希望各位老师纠正。
   
   特别说明:
   
   本论坛登录是采用用户名登录,登录后取得用户昵称。整个网站不显示用户名,我想相对来说安全一点吧,所以有昵称和用户名区别。
   
   1。建立数据库表
   表名为online
   设如下字段
   id '用来记录每一个访问都的session.sessionid
   name '如果是访客,则记录为访客。
   online '如果是访各为0 如果是会员1
   datetime '最近活动时间
   username '会员的登录用户名,访客为空。
   ip '记录访问都的登录IP
   
   head.asp '向数据库表写入在线人数,该页面必须搜入到每一个用于浏览ASP页面中。
   <%
   set rs=Server.CreateObject("ADODB.Recordset")
   if session("username")="" then 判断用户未登录
   sql="select * from online where id='"&session.sessionid&"' " '判断这个sessionid是否存在于数据库表中.
   rs.Open sql,Conn,1,3
   if rs.eof then '访客第一次浏览
   rs.addnew
   rs("id")=session.sessionID
   rs("name")="游客"
   rs("online")=0 '0表示用户未登陆,是游客身份
   rs("datetime")=now()
   userip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
    If userip = "" Then
    userip= Request.ServerVariables("REMOTE_ADDR")
    end if
    rs("ip")=userip
   else '访客非第一次浏览
   rs("datetime")=now() '更新活动时间
   rs.update
   rs.close
   end if
   else
   sql="select * from online where id='" & session.sessionID & "' or admin='"&session("username")&"'" '判断sessionid 或者 用户名记录已存在数据表中。
   rs.Open sql,Conn,1,3
   if rs.eof then
   rs.addnew '会员第一次进入网站(可能从网站首页直接登录进入论坛)。
   rs("id")=session.sessionID
   rs("name")=session("show") '写入用户昵称
   rs("username")=session("username") '写入登录用户名
   rs("online")=1 '表示用户已经登陆,是会员身份
   rs("datetime")=now() '将当前系统时间设置为用户的登陆时间
   userip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
    If userip = "" Then
    userip= Request.ServerVariables("REMOTE_ADDR")
    end if
    rs("ip")=userip
   else //会员非第一次浏览网站,访客登录网站。
   rs("name")=session("show") 更新用户昵称
   rs("username")=session("username")
   rs("online")=1 '表示用户已经登陆,是会员身份
   rs("datetime")=now()
   end if
   rs.update
   rs.close
   end if
   set rs=nothing
   %>
   conn.execute("delete from online where datediff('s',datetime,now())>60") '删除60秒没有活动的访客,时间可以自己调整。
   
   有兴趣和意见的朋友可以发信到qizulovemin@hotmail.com,希望和各位老师交流学习。



| 网站转让 | 站长信箱 | 网站登录 | 技术教程 | 免费计数器 | 免费留言本 | 868流量统计 | 好帮手网站营销 |
地址:广东省阳江市  联系电话:13725641179 杨先生
Copyright 2004-2020 868资源网- 版权所有    粤ICP备05007330号