一个非常简单完整的聊天室演示程序,推荐初学者下载

王朝asp·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

简单的聊天室演示程序

一个比较基本的聊天室程序,具备最基本的“在线成员”“私聊”“清屏”“自动滚屏”等功能

这个聊天室程序是为ASP初学者学习参考而做,程序压缩包不大,20几K

下载地址:http://www.lshdic.com/download/lshdic/asp_liaotian.zip

这个聊天室是结合数据库的,由于代码分布不集中,在此只贴出用户登陆的那页代码

<%

set link1=server.CreateObject("ADODB.Connection")

link1.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("聊天室.mdb")

set rs=link1.Execute("select * from 会员表")

if request.form("ok")="" then

%>

<HTML>

<HEAD>

<META http-equiv='Content-Type' content='text/html;charset=gb2312'>

<Meta name='Gemeratpr' content='网络程序员伴侣(Lshdic)2004'>

<TITLE>登陆聊天室</TITLE>

<STYLE>

*{font-size:12px;color:;}

</STYLE>

</HEAD>

<BODY topmargin='2' leftmargin='2'>

<center>&nbsp;<p>风云舞者的聊天室<p>

<form method='post'>

在线成员:<select style='width:125'>

<%

str1=0

do while not rs.eof

times=DateDiff("s",rs("时间"),now) '得到“当前时间”与“会员最后操作时间”之间间隔的秒数

if times<1200 then '20分钟内的最大停塞时间

if str1=0 then

str1=1:response.write "<option selected>" & rs("会员")

else

response.write "<option>" & rs("会员")

end if

end if

rs.movenext

loop

%>

</select><p>

用户名:<input type='text' maxlength='10' name='user'><p>

<input type='submit' value='提交' name='ok'>

</form>

<%

else

if request.form("user")="" then response.write "你必须填写用户名":response.end

if instr(request.form("user")," ")<>0 or instr(request.form("user"),"<")<>0 or instr(request.form("user"),">")<>0 or len(request.form("user"))<1 then response.write "用户名称不可以含有空格、&lt;符号、&gt;符号、_符号,而且最少为1个字符":response.end

if request.form("user")="大家" then response.write "用户名称不可以是“大家”":response.end

if rs.eof=true and rs.bof=false then rs.movefirst

isolduser=0

do while not rs.eof

if lcase(request.form("user"))=lcase(rs("会员")) and DateDiff("s",rs("时间"),now)<1200 then

response.write "对不起,<font color=red>" & request.form("user") & "</font> 这个用户还未离线,请您另起一个名字":response.end

elseif lcase(request.form("user"))=lcase(rs("会员")) and DateDiff("s",rs("时间"),now)>1200 then

isolduser=1:exit do

end if

rs.movenext

loop

if isolduser=1 then '如果该会员以存在数据库中

link1.Execute "update 会员表 set 时间='" & now & "',id=" & session.SessionID & " where 会员='" & request.form("user") & "'"

else

link1.Execute "Insert into 会员表(会员,时间,id) values ('" & request.form("user") & "','" & now & "'," & session.SessionID & ")"

end if

application.Lock()

application("mc_" & session.SessionID)="" '为该用户创建一个存储聊天数据的application变量中

application.UnLock()

session("who")=request.form("user") '为该用户创建一个Session变量为了以后动态判断

response.Redirect "MC_allform.asp"

end if

%>

</BODY>

</HTML>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航