• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP > 聊天室实现私聊第1/4页

聊天室实现私聊第1/4页

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了聊天室的设计与实现,java实现聊天室,python实现聊天室,java实现多人聊天室,php实现聊天室等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
几个要好的网友在聊天室里闲聊的时侯,总会遇上有些话题是不想同一聊天室内别的聊友看见的,那么聊天室支持悄悄话功能将是什分有必要的了,实现悄悄话的方法很多,现在小虎介绍一下利用session对象来实现它,用session对象来实现悄悄话,是有优缺点的,因为session对象的应用,其实就是客户端cookies的使用。如果客户端cookies不支持或关闭了,那么程序运行起来就有问题了。那么使用session对象就没好处了吗??非也,至少在编程上大大减少了工作量嘛,试想一下如果需要保存该用户的聊天名字,那么使用session对象就能直接保存他的名字了,如果没有session对象。解决的方法看来就只有在处理发言的FORM里设几个隐含的textbox对象来保存,这样处理起来会比教烦锁,但好处是通用性广,就算浏览器不支持cookies仍然可用。 

说到这里,大伙不妨试试网上众多的ASP聊天室,试把浏览器的安全选项(总是接受cookies关了)看看那个聊天室仍然正常地能使用。那个就问题百出来。。呵呵~~不要找小虎的聊天室来试哦....我的聊天室也需要cookies来支持的。不用session对象编程真是烦锁很多。而且大部分浏览器的安全配置的默认值是总是接受cookies。所以也不用太但心,只有少部分的用户是比教特别的。 

现在从聊天室的发言开始,到处理发言,显示发言,一步一步地让大家了解一下是如何处理的,最后就加上悄悄话功能 

  首先,我们的聊天室主要提供如下元素:发言人(你的名字),动作(叫嚷,抱抱...等),对象(这句话是向谁说的呢?),发言内容等四大元素。 

  其中发言人(你的聊天名字)的名字是保存在发言FORM的user隐藏文本框中,这样每当发言的时侯,在处理发言的says.asp程序里,就可以用request.form("user")来取得聊天名字。而动作则是由下拉框action来提供的,你可以自定义很多的动作类型,以满足不同聊友的需要。而发言对象,也是由下拉框whoto来选定,这些名单是列出当前聊天室内所有用户的名称。如何判断有新用户进聊天室以及退出处理,这里先不说了。因为构造一个完整的聊天室要做的工作还是挺多的。最后由一个says文本框提供发言内容。 

  有了这几个主要的聊天元素。我们就可以进行发言处理了。 

  请看看下面的程序片段 

  

'取得说话内容,并过滤其中的脚本语句 
usersays=request.form("says") 
if instr(usersays,"<script")>0 then 
usersays="" 
end if 

'判断是否有谈话内容,没有的话就不作处理 

if len(usersays)<>0 then 
session("whoto")=request.form("whoto") 
session("action")=request.form("action") 
if instr(usersays,chr(39))>0 then 
usersays=replace(usersays,chr(39),"\"&chr(39)) 
end if 
if instr(usersays,chr(34))>0 then 
usersays=replace(usersays,chr(34),"\"&chr(34)) 
end if 

application.lock 

'定义一个交谈缓冲区,后面将给大家仔细分析一下 

dim chats(20) 
for n=1 to 20 
chats(n)=application("chats")(n) 
next 
username=request.Form("user") 


usertime=Time 
usertime="("&right(usertime,8)&")" 
user_whoto=request.Form("whoto") 
user_action=request.Form("action") 
if application("counter")>19 then 
application("counter")=0 
end if 
'不是耳语就加一 
if request.form("action")<>"耳语" then 
application("counter")=application("zj_1counter")+1 
counter=application("zj_1counter") 
'用户的动作处理 

select case request.FORM("action") 
case "说话" 
if request.FORM("whoto")="ALL" then 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> :<font color=#0000aa> "&usersays&"</font><BR><BR>" 
else 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>与<font color=#00bb00> "&request.FORM("whoto")&" </font>说</I>:<font color=#0000aa> "&usersays&"</font><BR><BR>" 
end if 
case "叫嚷" 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>冲<font color=#00bb00> "&request.FORM("whoto")&" </font>大叫</I>:<B><font color=#0000aa> "&usersays&"</font></B><BR><BR>" 
case "亲亲" 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>亲了亲<font color=#00bb00> "&request.FORM("whoto")&" </font>的脸颊</I>:<font color=#0000aa> "&usersays&"</font><BR><BR>" 
case "拥抱" 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>轻轻的抱着<font color=#00bb00> "&request.FORM("whoto")&" </font></I>:<font color=#0000aa> "&usersays&"</font><BR><BR>" 
case "暴怒" 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>朝<font color=#00bb00> "&request.FORM("whoto")&" </font>横眉竖目道</I>:<font color=#0000aa> "&usersays&"</font><BR><BR>" 
case "轻推" 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>轻轻地推了推<font color=#00bb00> "&request.FORM("whoto")&" </font>的胳膊</I>:<font color=#0000aa> "&usersays&"</font><BR><BR>" 
case "傻笑" 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>傻兮兮的朝<font color=#00bb00> "&request.FORM("whoto")&" </font>笑笑</I>:<font color=#0000aa> "&usersays&"</font><BR><BR>" 
case "拳打" 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>对准<font color=#00bb00> "&request.FORM("whoto")&" </font>就是一拳</I>:<font color=#0000aa> "&usersays&"</font><BR><BR>" 
case "脚踢" 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>凌空一腿踢在<font color=#00bb00> "&request.FORM("whoto")&" </font>脑袋上</I>:<font color=#0000aa> "&usersays&"</font><BR><BR>" 
case "告戒" 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>拉着<font color=#00bb00> "&request.FORM("whoto")&" </font>手语气心长地说</I>:<font color=#0000aa> "&usersays&"</font><BR><BR>" 
case "耳光" 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>狠狠地掴了<font color=#00bb00> "&request.FORM("whoto")&" </font>几个耳光</I>:<font color=#0000aa> "&usersays&"</font><BR><BR>" 
case "鞠躬" 
chats(counter)="<font color=blue>"&usertime&"</font> <font color=black>"&username&"</font> <I>毕恭毕敬地向&l
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 聊天室实现私聊第1/4页

相关文章

  • 2017-05-11asp 获取参数值与sql安全过滤参数函数代码
  • 2017-05-11vbcrlf的意思
  • 2017-05-11javascript asp教程服务器对象
  • 2017-05-11ASP中用ajax方式获得session的实现代码
  • 2017-05-11一段采集程序代码
  • 2017-05-11asp form 表单验证函数
  • 2017-05-11为google量身定做的sitemap生成代码asp版
  • 2017-05-11循环取值Request.QueryString的用法
  • 2017-05-11ASP 包含文件中的路径问题和使用单一数据库连接文件的解决方案
  • 2017-05-11如何在不支持数据库的asp主页上运用ado

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • asp下查询xml的实现代码
    • asp批量生成大量规律性文本内容的代码
    • 在Vista IIS 7 中用 vs2005 调试 Web 项目的注意事项
    • 无组件生成缩略图
    • 查看所有的Server Variables的环境变量
    • 分页代码
    • ASP编程入门进阶(二):认识表单
    • asp中把数据导出为excel的2种方法
    • asp下去除数组中重复项的方法
    • ASP语法注释

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有