结合Flash与Asp来实现一个简单的聊天室,有在线聊天、在线人员名单、在线时间等功能。在这篇教程的最后,还比较详细地介绍了Flash与Asp结合使用的平台环境和常用的调试手段。
一、原理
   主要的流程是先在Flash端发送一个请求到服务器端,然后等待从服务器端的返回值,当值返回Flash端后,根据相应的值做相应的操作。在Flash部分,跟前面的教程一样,用到的主要都是loadVariables()函数和循环等待的技巧。在Asp部分,主要用到了global.asa文件和application()属性,先定义几个application对象,然后将要保持的内容放在application对象中,要用的时候,直接从application对象中取就是了。
   二、登陆
   登陆部分的基本原理是:在Flash端输入用户名和密码,通过Asp查询数据库,如果用户名和密码正确,就跳转到聊天主界面,否则就跳转到登陆失败界面。
   A、asp部分
   1、 新建一个空白文件,命名为global.asa,内容如下:
1Flash聊天室的实现[1]<script language="vbscript" runat="server"> 
2Flash聊天室的实现[1]sub application_onstart 
3Flash聊天室的实现[1]application("VisitorNum")=0 
4Flash聊天室的实现[1]application("VisitorName")="" 
5Flash聊天室的实现[1]application("AllCanSee")="<br>" 
6Flash聊天室的实现[1]end sub 
7Flash聊天室的实现[1]</script> 

   注释:上面是一个global文件,定义了几个application对象,sub application_onstart的意思是在启动服务的时候触发,初始化这些对象。Application对象可以在几个网页之间保持内容,application("VisitorNum")中的是当前在线人数,application("VisitorName")中的是当前在线人员名单,application("AllCanSee")中的是当前的聊天内容。
   2、新建一个空白文件,命名为login.asp,跟global.asa保存在同一个目录中,内容如下:
 1Flash聊天室的实现[1]<
 2Flash聊天室的实现[1]username = request("username") ‘注释1 
 3Flash聊天室的实现[1]userpwd = request("userpwd"
 4Flash聊天室的实现[1]set conn=Server.CreateObject("ADODB.Connection"
 5Flash聊天室的实现[1]conn.open "Driver={SQL Server};SERVER=127.0.0.1;DATABASE=pywz" ‘注释2 
 6Flash聊天室的实现[1]set rs=Server.CreateObject("ADODB.Recordset"
 7Flash聊天室的实现[1]strSql="select * from UserInfo where userid=’" & username & "’and password=’" & userpwd & "" ‘注释3 
 8Flash聊天室的实现[1]rs.open strSql,conn, 11 
 9Flash聊天室的实现[1]if not(rs.bof and rs.eof) then ‘注释4 
10Flash聊天室的实现[1]application("VisitorNum"= application("VisitorNum"+ 1 
11Flash聊天室的实现[1]application("VisitorName"= application("VisitorName"& " " & username 
12Flash聊天室的实现[1]Response.Write ("userlogin=success"
13Flash聊天室的实现[1]Else 
14Flash聊天室的实现[1]Response.Write ("userlogin=unsuccess") ‘注释5 
15Flash聊天室的实现[1]end if 
16Flash聊天室的实现[1]rs.close 
17Flash聊天室的实现[1]conn.close 
18Flash聊天室的实现[1]%> 
19Flash聊天室的实现[1]
   注释1:取得从Flash端传过来的用户名和密码。
   注释2:打开一个数据库的连接,读者要根据数据库的类型,数据库所在的ip,数据库的实例名做相应的修改。
   注释3:根据用户名和密码构造一个sql语句。
   注释4:如果在数据库中存在所输入的用户名和密码,将application("VisitorNum")加1,将当前用户名保存在application("VisitorName"),返回登陆成功的标志位userlogin位success。
   注释5:用户名或密码错误,返回登陆失败的标志位userlogin位unsuccess。

相关文章:

  • 2022-01-15
  • 2021-12-05
  • 2021-10-04
  • 2022-12-23
  • 2022-12-23
  • 2021-12-23
  • 2021-05-11
  • 2021-08-20
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-10-17
  • 2022-01-11
  • 2021-12-02
  • 2021-08-11
  • 2022-12-23
相关资源
相似解决方案