欢迎光临
我们一直在努力

ASP编程入门进阶(十一):Chat聊天程序-ASP教程,ASP应用

建站超值云服务器,限时71元/月

通常的聊天室所采用的程序,也就是chat程序了,其基本结构原理是不会采用到数据库的。那究竟采用什么技术呢?我们知道asp变量当中session变量的作用是记录单个用户的信息,并且能跟踪用户的行为;application对象的作用则起的全局变量,可以实现站点多个用户之间在页面中共享信息的。

那可以想象,在针对当前聊天程序中,一个聊天成员即为一个session变量,聊天成员之间的会话则当成application变量进行共享显示,以使各成员都能看见。

那下面就采用一很经典的实例程序,进行了解和分析。

1,chat.asp

<%if request.servervariables("request_method")="get" then%>

<form method="post" action="chat.asp">

<input type="text" name="nick" value="your nick name"><p>

<input type="submit" value="come in"><p>

<input type="hidden" name="log" size="20" value="1">

</form>

<%response.end

else

response.clear

dim talk

if request.form("nick")<>"" then

session("nick")=request.form("nick")

end if

%>

<form method="post" action="chat.asp" name=form1>

<%=session("nick")%>说话:

<input type="text" name="talk" size="50"><br>

<input type="submit" value="提交">

<input type="reset" value="取消"></p>

</form>

<a href="chat.asp">离开</a><br>

<%

if request.form("log")<>1 then

if trim(request.form("talk"))="" then

talk=session("nick")&"不说一句话就想来敷衍大家"

else

talk=trim(request.form("talk"))

end if

application.lock

application("show")="来自"&request.servervariables("remote_addr")& "的" &session("nick")&"在"&time& "的时候说:" &talk& "<br>" &application("show")

application.unlock

response.write application("show")

end if

%>

<%end if%>

简单解释:

1,<%if request.servervariables("request_method")="get" then%>的作用就是判断当前页面接受的方式,如果为get方式则会显示“要求输入昵称”的表单页。因为页面的默然接受方式为get,当在url地址栏直接敲入时,也就是没有任何信息的时候,就应该显示要求“输入昵称”。

2,<input type="hidden" name="log" size="20" value="1">和下面的if request.form("log")<>1 then是有关联的:显然第一次输入昵称进入,同样将log隐藏域发送。但作为第一次的进入是无任何语句发言的,所以判断接受的log值不为1,亦即非首次登录(表示已经登录)时,执行内部相关聊天显示程序。

3,trim(request.form("talk"))="",trim就是个函数了:删去字符串前,后的空格。初此,还有rtrim():去掉字符串后的空格;ltrim():去掉字符串前的空格。

<script language=vbs>

cnbruce=" this is a test ! "

alert("全部显示:"&cnbruce)

alert("删除前面空格:"&ltrim(cnbruce))

alert("删除后面空格:"&rtrim(cnbruce))

alert("删除前后空格:"&trim(cnbruce))

</script>

[ctrl+a 全部选择 提示:你可先修改部分代码,再按运行]

4,

application.lock

application("show")="来自"&request.servervariables("remote_addr")& "的" &session("nick")&"在"&time& "的时候说:" &talk& "<br>" &application("show")

application.unlock

提取精华得

application.lock

application("show")=talk& "<br>" &application("show")

application.unlock

可以看到是application变量的叠加功能,每次application("show")的值都建立在原有application变量值的基础之上,再附加上最新的聊天内容:talk变量的值。这样就保证所有用户都能看到的共享信息了。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » ASP编程入门进阶(十一):Chat聊天程序-ASP教程,ASP应用
分享到: 更多 (0)

相关推荐

  • 暂无文章