网络编程
位置:首页>> 网络编程>> Asp编程>> 用ASP建立一个简单的聊天室

用ASP建立一个简单的聊天室

  发布时间:2007-09-21 12:43:00 

标签:聊天室,asp

经过一个阶段的asp学习,下面我们结合所学过的内容建立一个最简单的聊天室,虽然很简单,但是大家可以通过他来掌握一个聊天室建立的基本过程,并且可以不断的完善其功能.
  
    下面介绍其主要步骤:
  
    1,添加Global.asa文件里面的代码.这部分代码主要处理Application_onStart事件,在此事件中,定义了一个有15个元素的数据,并把它赋给了一个Application对象的属性.Global.asa文件的内容如下.


 <SCRIPT LANGUAGE="VBScript" RUNAT="Server"> 
  SUB Application_OnStart 
  dim maChats(15) 定义一个具有15个元素的数据. 
  Application("gaChats")=maChats 存储谈话的内容. 
  Application("giCounter")=0 存储已有的谈话数目. 
  END SUB 
  </SCRIPT> 


2,在AspChat.asp文件中添加代码.注意,要把这部分代码添加在主页中的两条水平线之间,也就是文本中的两个<hr>之间.程序首先判断申请这幅主页时,是否用的是"Post"方法,因为本例中窗口的提交方法是"post".而一般第一次申请这幅主页时,用的是"get"方法.所以如果采用的是"post"方法的话,就说明是某一浏览者在提交自己的谈话内容时的重新申请,这就要进行处理,因为又有新的谈话内容了.否则,说明某一浏览者第一次申请此主页,并没有提交什么谈话,因此只需要把当前的谈话内容显示出来就可以了.


<p align="center"><font size=5>一个简单的聊天室</font></p> 
  <br> 
  <% 
  处理输入 
  if Request.ServerVariables("Request_Method")="POST" then 
  标明讲话者 
  if len(Request("txtWho"))>0 then 
  Session("ssWho")=Request("txtWho") 
  end if 
  封锁Application对象 
  Application.Lock 
  创建本地引用指针 
  mlCounter=Application("giCounter") 
  maChats=Application("gaChats") 
  如果写入的行数超过10,则重新开始记数. 
  if mlCoundter>9 then 
  mlCoundter=0 
  end if 
  增加用户的输入,计数器加1 
  maChat(mlChounter)=Session("ssWho")&":"&Request("txtCents") 
  mlCounter=mlCounter+1 
  把局部变量设置为在应用范围内有效. 
  Applicati "giCounter")=mlCounter 
  Application("gaChats")=maChat 
  消除Application对象的封锁 
  Application.Unlock 
  end if 
  %> 
  <% 
  写入TextArea 
  if Application("giCounter")=0 then 
  lstemp=Application("gaChats")(0) 
  else 
  for x=0 to Application("giCounter")-1 
  lstemp=lstemp&"<br>"Application("gaChats")(x) 
  next 
  end if 
  Response.white lstemp 
  %> 
  <hr> 



 3,最后把txtWho的内容初始化.也就是当浏览者输入过一次自己的姓名以后就不用再次输入了,为了区分每个不同的浏览者,在这里使用了"Session"对象.利用Session("ssWho")记载浏览者的姓名.下面的代码直接写在以上代码的下面存入AspChat.asp中.



 <form method="POST" action="aspchat.asp" name="frmAsp"> 
  <div align="center"><center><p>发言:<input type="text" name="txtCents" size="34"></p> 
  </center></div><div align="center"><center><p>对象:<input type="submit" value="送出" name="B1"></p> 
  </center></div> 
  </form>

 


4.完成.只要把2,3步的代码前后加入完整的htm文件代码然后存为aspchat.asp就可以了,这是一个很简单的asp聊天室程序,大家可以随着学习的深入不断加强它的功能!

0
投稿

猜你喜欢

  • 今天有个学生问我:页面中使用GIF格式,失真太大,怎么办呢?这个问题比较简单啊,只要用JPG就可以了。我们常用的页面的图片格式有三种,GIF
  • 目前已经有很多生成html的新闻系统,但是都是用的模板,本函数实现把asp页面产生的html代码保存成为一个html文件,这样就没有必要改动
  • 制作圆角导航其实跟制作圆角边框是一样的道理,有一种很常见的方法就是使用CSS绝对定位,切四个圆角的小图片,然后分别定位在四个角,这样就可以实
  • 摸到她了!青翠的衣衫,奶白的肌肤,捧在手上的感觉真是太好了,心里美滋滋的。《悟透JavaScript》,一本偶然之作,终于成书并出版了。本书
  • 月份转换到中文Function MonthToCH(TheMonth) Dim mm mm=split("一,
  • 英文的文档在这里,详细全面,本文仅为自己的学习笔记,只是试图通过转述加深自己的学习,不详细不全面。由于浏览器之间的差异,所以在JS中监听事件
  • 相信大家都知道html和css,知道html结构和css表现分离,知道html语义化,这些都是这几年的热门关键字。语义化的html在国内也是
  •     对于网页制作者来说,最烦琐的事情可能就是给页面中的图片或文字加链接了。假如页面内容很多的话,那么所做的
  • 本来在网上有不少关于这方面的文章,可是我找了好久也没看到把(可能我的搜索水平有线把)不过倒是聊天室的很多。如何统计会员再线状态,希望对刚开始
  • 最近,就“尊重”一词,个人小有感概。也许跟我说“尊重”一词的同事并不是这么想的,但我反思了一下自己,作为一名设计师,确实存在这些疑问(不足之
  • 英文原文:http://www.smashingmagazine.com/2008/08/18/译文原文:http://blog.bingo
  • 富文本编辑器,Rich Text Editor, 简称 RTE, 它提供类似于 Microsoft Word 的编辑功能,容易被不会编写 H
  •  1.      什么是存储过程?存储过程是SQL server所提供的Tran
  • 先声明一下,这是本人在某个项目中用到的,本人自己写的,如有雷同纯属巧合。同时也欢迎高人指正。这种星级的投票效果很常见,但是目前线上大多都是通
  • 1、root函数格式root()功能描述返回一个路径串变量应用代码'sample string = c:\intels\jingca
  • 很多现代的浏览器在地址栏的右边有个搜索框,默认的安装有 Google 搜索等。如下图所示:其实这是 OpenSearch 的一个应用,只要编
  • 五、过渡转化的使用在《mind hack》一书中,揭示了人脑鲜为人知的工作原理。其中提到了“突然的移动或闪烁会吸引人的注意力,这正是负责视觉
  • 图形由json格式加载,可以灵活配置。下一步是完善用户的操作,做这个感觉还是蛮有意思的。呵呵。截图:部分源码:<script type
  •     朋友的网站要计算机票的折扣价格,并且在最后的折扣价格上应对个位进行四舍五入,同时在ASP和Javasc
  • 有些时候我们需要得到刚刚插入数据库中的条目id,用于相关系统的更改,在以前我是使用select+top 1+desc 这种笨方法实现的,在没
手机版 网络编程 asp之家 www.aspxhome.com