设为首页   加入最爱           最新更新:全方位英文文章资料库
 
资料坊搜索: 标题 全文     
“在线访客”的制作方法
   首页>>YesizeCOM>>电脑技能坊>>ASP>>正文       
 
广告招租,e-mail:yesize@hotmail.com

广告招租,e-mail:yesize@hotmail.com

======制作原理======

方法就是当用户访问网页时将用户的信息添加进数据库里
在添加的同时,检查数据库里是否有该用户的在线记录,如
果有,则更新该记录,如果没有就把他添加进数据库.
并删除在指定时间内没有活动的在线记录.(大概就是这样吧!)

======数据表设计=======

新建一个数据表,名为Online
删除自动编号字段
建立以下字段
字段名:ID      类型:数字
字段名:GUESTNAME    类型:文本
字段名:STATS    类型:文本
字段名:VISITIME    类型:日期/时间
字段名:OUTIME    类型:日期/时间


=======================以下部分源码,供参考,如果写得不好,欢迎指正=======================

<%
sub activeonline()

dim ip

////删除180秒内不活动的在线记录.
sql=Delete FROM online WHERE DATEDIFF(s,outime,now())>180
Conn.Execute sql

if stats= then//如果stats的值为空,则显示为
stats=不知在做什么?
else
stats=stats
end if

IP=replace(Request.ServerVariables(REMOTE_HOST),.,)////获取IP并消去IP中的.

////检查Online表中是否已有这个IP的记录

sql=select id from online where id=&ip&
set rs=conn.execute(sql)

if rs.eof or rs.bof then////如果没有该IP记录则添加在线记录

sql=insert into online(id,guestname,stats,visitime,outime) values (&ip&,游客,&stats&,Now(),Now())

else////如果Online表中已有该IP记录则更新该记录

sql=update online set outime=Now(),stats=&stats&,guestname=游客 where id=&ip&

end if
conn.execute(sql)

end sub
%>
==========================实例===========================
将以上代码修改并保存为Online.asp嵌入在各网页的尾部

<%

dim conn   
dim connstr
on error resume next
connstr=DBQ=+server.mappath(数据库名称.mdb)+;DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};
set conn=server.createobject(ADODB.CONNECTION)
conn.open connstr 
保存为conn.asp文件 
%>

<!--#INCLUDE FILE=conn.asp -->
<%

dim stats

stats=查看在线

call activeonline()


Set rs = Server.CreateObject(ADODB.Recordset)
sql=SELECT Id,GuestName,Stats,Visitime,Outime FROM Online ORDER BY Visitime Desc
rs.open sql,conn,1,3

total=rs.RecordCount

%>
<table border=1 cellpadding=2 cellspacing=0 style=border-collapse: collapse bordercolor=#111111 width=100% height=53>
  <tr>
    <td width=20% height=16 align=center>昵称</td>
    <td width=20% height=16 align=center>动作</td>
    <td width=20% height=16 align=center>来访</td>
    <td width=20% height=16 align=center>最后活动</td>
  </tr>
<%do while not rs.eof%>
  <tr>
    <td width=20% height=28 align=center><%=rs(1)%></td>
    <td width=20% height=28 align=center><%=rs(2)%></td>
    <td width=20% height=28 align=center><%=rs(3)%></td>
    <td width=20% height=28 align=center><%=rs(4)%></td>
  </tr>
<%
rs.movenext
loop
%>
</table>
在线人数:<%=total%>
<%
rs.close
set rs=nothing

%><!--#INCLUDE FILE=Online.asp -->

写得不好,见笑了.如果你有更好的方法就献上来吧,大家互相学习嘛!


上一篇:用ASP实现远程批量文件改名 下一篇:ASP 中健壮的页结构的异常处理

版权说明:作品来源于网上,版权归作者所有,如果无意中侵犯了您的版权,请来信告知,本站将在3个工作日内删除。yesize@hotmail.com
  热门小游戏分类 
射击小游戏 连连看小游戏
台球小游戏 成人小游戏
CS小游戏 化妆小游戏
赛车小游戏 休闲小游戏
篮球小游戏 换装小游戏
儿童小游戏 牛牛小游戏
麻将小游戏 冒险小游戏
美媚小游戏 益智小游戏
体育小游戏  
Society Recreation & Sports
Travel & Leisure Communications
Vehicles Computers
Fashion Arts & Entertainment
Reference & Education Disease & Illness
Writing & Speaking Politics
Product Reviews Food & Beverage
Finance Internet Business
Self Improvement Home & Family
Health & Fitness Business
最新更新内容
警惕“公务员报考热”背
公务员考试不是丈母娘考
一名新公务员的自白:我
公务员考脑筋急转弯与挂
北努斗:2006行政能力测
大讨论:06行测BT题目大
过来人回忆:当年,我也
一家之言:公务员热折射
公务员考试申论要是有正
数十万大学生走进公务员
      粤ICP备05005424         Copyright ©2000 - 2004 Yesize.COM