asp聊天室源码 asp源码怎么用
大家好,关于asp聊天室源码很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于asp源码怎么用的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!
哪位有ASP语音聊天室的源文件
呵呵,手把手的教
第一步:下载语音聊天室服务器端程序,我用的是Bchat工作室的Bchat Server。
1.进入页面;
2.页面右侧的“火热头条”中有“Bchat推出10用户免费下载版”字样,我们需要的就是它;
3.点击“Bchat推出10用户免费下载版”的链接后,就到了免费版本下载页面;
4.在下载页面中下载“Windows版本”(其他版本我没用过,我就会使用Windows版本);
5.下载后的文件是bchat.zip,把他解压缩到一个目录中(为了以后你在网站的ASP程序使用它,这个目录应当是你网站的某个目录,比如C:\Inetpub\wwwroot\);
6.按上面操作以后,Bchat Server就被安装到了C:\Inetpub\wwwroot\Bchat\目录下;
7.进入C:\Inetpub\wwwroot\Bchat\目录,可以看到目录下有7个文件以及3个子目录;
8.把gb子目录下的文件全部拷贝到当前目录(当前目录也就是C:\Inetpub\wwwroot\Bchat\目录),这样就安装好了具有简体中文界面的语音聊天室。(如果你想安装英文界面,那么拷贝english子目录下的文件到当前目录;如果你想安装繁体中文界面,那么拷贝big5子目录下的文件到当前目录。)
第二步:建立一个数据库。(尽管不建立数据库也能使用语音聊天室,但是我们要的是功能强点的“ASP”语音聊天室,因此要用数据库!)
1.运行Access建立一个空数据库,数据库名字取为bchat.mdb,数据库保存在C:\Inetpub\wwwroot\Bchat\目录下;
2.选择“使用设计器创建表”;
3.添加一个字段。字段名称bName,数据类型选择文本;
4.再添加一个字段。字段名称bPort,数据类型选择数字;
5.关闭这个(设计器窗口)。点关闭后,提示你“是否保存更改”,选择“是Y”,然后让你输入表名称,输入room,并确定。然后Access会提示“尚未定义主键”,不用理他,选择“否N”。
6.现在room表建立好了,但是里面还没有数据,我们手工给他加上几条数据。
7.双击room表添加数据;bName那里输入“一号房间”(这个是房间名字,你可以随便写),bPort那里输入5100(这个是Bchat Server运行的端口号,你也可以随便写。但是这个端口号不能是系统中已经使用的端口,如果你不熟悉端口,那这里先写上5100,5100一般是空闲的);
8.再添加一条数据;bName填“二号房间”,bPort填5200;
9.关闭Access。
第三步:写一个ASP程序。(程序我都写好了,你把下面的代码拷贝一下就行了,然后把文件保存成index.asp,并保存到C:\Inetpub\wwwroot\Bchat\目录下。)
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%Option Explicit%>
<%
'*************************************************************
'程序名称:ASP语音聊天室
'程序实现:必须依赖Bchat Server,下载地址
'程序设计:Madpolice
'完成时间:2003-2-23 17:36:00
'说明:1.在本人的Windows 2000 Advanced Server上测试通过,
'不保证在其他环境中能正常运行。
' 2.本人不要求任何版权,但是请保留俺的名字,行不?
'**************************************************************
Dim db,connStr,conn,rs,sql,serverIP
db="bchat.mdb"
connStr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath(db)
'如果你的服务器采用较老版本Access驱动,请用下面连接方法
'connStr="driver={Microsoft Access Driver(*.mdb)};dbq="&Server.MapPath(db)
Set conn=Server.CreateObject("ADODB.Connection")
conn.Open connStr
Set rs=Server.CreateObject("ADODB.RecordSet")
serverIP=Request.ServerVariables("LOCAL_ADDR")
sql="SELECT* FROM room ORDER BY bPort"
rs.Open sql,conn,1,1
If rs.EOF Then
rs.Close
Set rs=Nothing
conn.Close
Set conn=Nothing
Response.Write"数据库中还没有记录呢!"
Response.End
End If
If Application("Bchat_Status")<>"running" Then
Call StartBchat()
rs.MoveFirst
End If
%>
<html>
<head>
<title>语音聊天室</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script language="JavaScript">
var wwwhost="<%=Request.ServerVariables("SERVER_NAME")%>";
function go(pport){
if(validname(document.form1.elements[0])){
document['form1'].action=';;
launchchat();
document['form1'].method='post';
document.form1.submit();
}
}
function validname(str1)
{
var s,i,j;
if(str1.value.length<1){
alert("请输入您的大名,名字不能为空!");
str1.focus();
return false;
}
return true;
}
var focusok=false;
if(navigator.appName=="Netscape"){
focusok=true;
}
vers= navigator.appVersion;
if(navigator.appName=="Microsoft Internet Explorer"){
pos= vers.lastIndexOf('.');
vers= vers.substring(pos-1,vers.length);
}
proper_version= parseFloat(vers);
if(proper_version>=5){
focusok=true;
}
function launchchat(){
var chat= window.open("","chat","top=0,left=0,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=790,height=530");
if(focusok){
chat.focus();
}
return true;
}
</script>
</head>
<body>
<FORM action=/ method=post name=form1 target="chat" align="center">
<P align=center>请先输大名:<input type="text" name="USER" size="10" MAXLENGTH="15"></p>
<center><div align=center>
<TABLE border=1 width="60%">
<%Do While Not rs.EOF%>
<tr height=20>
<td width="70%">
<li><%=rs("bName")%></td>
<td width="30%" align="center">
<INPUT name="r" onclick="go('<%=rs("bPort")%>')" type="button" value="进入">
</td></tr>
<%
rs.MoveNext
Loop
rs.Close
Set rs=Nothing
%>
<input type="hidden" name="PASS" value="bchat">
</td></tr>
</table></div></center></FORM>
</body>
</html>
<%
conn.Close
Set conn= Nothing
Sub StartBchat()
Dim f1,f2,wsh,currentPath,sourceFile,targetFile,tempString,tempCommand
currentPath=Server.Mappath(".")
sourceFile=currentPath&"\2000.ini"
Do While Not rs.EOF
targetFile=currentPath&"\"&rs("bPort")&".ini"
Set f1=Server.CreateObject("ADODB.Stream")
f1.Type=2
f1.Mode=3
f1.Charset="gb2312"
f1.Open
f1.LoadFromFile sourceFile
tempString=f1.ReadText
f1.Close
Set f1=Nothing
tempString=Replace(tempString,"聊圆",rs("bName"))
tempString=Replace(tempString,"D:\BChat",currentPath)
tempString=Replace(tempString,"2000",rs("bPort"))
tempString=Replace(tempString,"0.0.0.0",serverIP)
Set f2=Server.CreateObject("ADODB.Stream")
f2.Type=2
f2.Mode=3
f2.Charset="gb2312"
f2.Open
f2.WriteText tempString
f2.SaveToFile targetFile,2
f2.Close
Set f2=Nothing
Set f1=Server.CreateObject("ADODB.Stream")
f1.Type=2
f1.Mode=3
f1.Charset="gb2312"
f1.Open
f1.LoadFromFile currentPath&"\adminpass_2000.txt"
tempString=f1.ReadText
f1.Close
Set f1=Nothing
Set f2=Server.CreateObject("ADODB.Stream")
f2.Type=2
f2.Mode=3
f2.Charset="gb2312"
f2.Open
f2.WriteText tempString
f2.SaveToFile currentPath&"\adminpass_"&rs("bPort")&".txt",2
f2.Close
Set f2=Nothing
tempCommand=currentPath&"\bchat.exe"&targetFile
Set wsh=Server.CreateObject("WScript.Shell")
wsh.Run tempCommand,0,false
Set wsh=Nothing
rs.MoveNext
Loop
Application("Bchat_Status")="running"
End Sub
%>
第四步:在浏览器中输入
看到结果了吗?
求ASP网络聊天室 毕业论文
----经常在Internet上冲浪的网友恐怕很少有人没有去过聊天室神侃胡吹过。你只要稍微留意一下就会发现这些聊天室大多是用CGI程序或者用JAVA开发的Applet维护的。开发过这类CGI或Applet的程序员都知道,这种开发工作是费时费力的。那么有没有一种更简单、省力的开发方式呢?答案是肯定的。笔者利用ASP很快就开发了一个聊天室,该聊天室不光速度快,维护也特方便。在这里笔者想把开发过程中的技术、技巧和心得介绍给大家。
<p style=line-height: 150%>----关于ASP在《计算机世界报》上有很多文章都有介绍,这里不再赘述。笔者工作的单位里有一个由Windows NT4.0组织的LAN。NT服务器上安装了IIS3.0,设置了若干各WEB站点,其中一个取名为fyb.cam.gov.cn。本单位的WEB站点并没有接入Internet,由于有聊天室却也吸引了不少本单位的员工。如果您的工作环境与我们的相同,不妨也在自己的LAN里面如法炮制一个聊天室。
<p style=line-height: 150%>一、聊天室的规划:
---- 1、谈话内容储存方式的选择:在客户机上显示即时谈话的内容应以什么方式储存在服务器呢?ASP有两种选择,一种是以文本文件方式,一种是以数据库方式。但笔者感觉ASP对文本文件操作的指令远不如ADO(ActiveDataObject)提供的对数据库操作的指令多。所以利用ADO,ASP能对数据库灵活地操作,比如插入、删除、更新、查询等等。笔者选择Access数据库来储存谈话的内容。该数据库内容只保留一天(可根据LAN的实际情况确定时间长短)的谈话内容。
<p style=line-height: 150%>---- 2、聊天室界面的设计:为了客户能够方便地浏览站点的内容,又能尽可能地显示聊天室的内容,笔者在一幅主页里设计了三帧。左边一帧显示的是站点的Index。右边一帧又分成上下两帧。上帧占70%,用来显示当前聊天室的内容;下帧占30%,用来提供一个文本输入框和供用户反馈的按钮
<p style=line-height: 150%>---- 3、进入聊天室的步骤:象大多数聊天室一样,首先应该提供给用户一个登录界面,由用户输入自己的名字或别名和自己随意给定的密码。如果输入的用户名与在线的用户名相同,则提示用户重新选择用户名或重新输入密码,以保证在线的所有用户名都是唯一的。登陆成功后进入聊天室,内容显示帧显示“欢迎加入”的欢迎信息。用户就可以在文本输入区内输入谈话内容了。
<p style=line-height: 150%>二、设计过程和开发技巧:
---- 1、设计ODBC系统数据源:如前所述,本开发采用ASP对ADO进行操作,因此必须先对数据源进行设置。在NT服务器的控制面板里双击ODBC图标,在系统DSN页添加系统DSN,选择Microsoft Access Driver,Data Source Name为‘fybchat’, Database选择Chat目录下的chat.mdb.该数据库包括下面几个字段:name, content,password,chattime,chatdate,分别以来存储姓名、谈话内容、密码、谈话时间和谈话日期。
<p style=line-height: 150%>---- 2、登录界面设计:登录界面为一html页,包含一些警告信息和一个Form。该Form以来获取用户名和密码,如下所示:
<p style=line-height: 150%><formmethod="post"action="receivedata.asp">
姓名:<inputtype="text"name="usname">
密码:<inputtype="password"name="uspassword">
</center>< br>< br>
< center><inputtype="submit"value="进入">
<inputtype="reset"value="清除"></center>
<inputtype="hidden"name="content"value="">
</form>
----通过提交按钮来激发receivedata.asp。该ASP文件主要来保证在聊天室里没有两个用户是同名的。用户提交信息后,该文件打开chat.mdb检查是否已经有该用户名,如果有但密码不对就提醒用户重新输入密码,如果没有那么用户就顺利进入了聊天室。进入聊天室界面的功能由下列语句完成:
<p style=line-height: 150%><FRAMESETROWS="70%,30%">
<FRAMESRC="forum.asp"NAME="main"
MARGINWIDTH="1"MARGINHEIGHT="1" Noresize>
<FRAMESRC="frft.asp?kname=
<%=name%>" NAME="footnotes"MARGINWIDTH="1"
MARGINHEIGHT="1" Noresize>
</FRAMESET>
----注意这里有一个技巧,通过参数kname将用户的姓名隐藏在客户的浏览器里面了,这样一来,用户每次提交谈话内容的同时也把他的姓名提交了。
<p style=line-height: 150%>---- 3、文本输入区的设计:文本输入区是由frft.asp产生的。如上所述,用户每次提交谈话内容的同时也把他的姓名提交了,用户提交谈话内容的动作是激活forum.asp。forum.asp的作用是刷新聊天室的内容。Frft.asp内容如下:
<p style=line-height: 150%><!DOCTYPE HTML PUBLIC"
-//IETF//DTDHTML//EN">
< html>
< head>
<metahttp-equiv="Content-Type"
content="text/html;charset=gb_2312-80">
<metaname="GENERATOR"
content="Microsoft FrontPage 2.0">
< title></title>
</head>
< body>
<%kname=request.QueryString("kname")%>
<basetarget="main">
<formname="fm1" method="POST"action="forum.asp">
<palign="center"><inputtype="text"size="90"
name="content"></p>
<palign="center"><inputtype="button"name="B1"
value="提交/刷新"><inputtype="reset"
name="B2" value="重写"></p>
<inputtype="hidden"name="kname"
value=<%=kname%>>
</form>
<SCRIPTLANGUAGE="VBScript">
<!--
<p style=line-height: 150%>Sub IeTimer1_Timer()
if fm1.content.value="" then
fm1.content.value=""
fm1.submit
else
end if
end sub
<p style=line-height: 150%>sub b1_onclick()
fm1.submit
fm1.content.value=""
end sub
-->
</SCRIPT>
<OBJECTID="IeTimer1" WIDTH=39 HEIGHT=39
CLASSID="CLSID:59CCB4A0-727D-
11CF-AC36-00AA00A47DD2"
CODEBASE="">
< PARAM NAME="_ExtentX"VALUE="1005">
< PARAMNAME="_ExtentY"VALUE="1005">
< PARAM NAME="Interval"VALUE="7000">
</OBJECT>
<p style=line-height: 150%></body>
</html>
----这时又出现了一个问题,用户必须不停提交才能看到最新的聊天室内容,这显然给用户带来了不便。于是考虑用一个timer的ActiveX控件来控制聊天室的内容岂不更好?于是选用了Ietimer,如上< object>……</object>所引用,每隔7秒钟聊天室内容自动更新一次。这样即使用户不想参加聊天也可以坐在机器边看别人聊天了。
<p style=line-height: 150%>三、总结
----由上述开发过程我们可以知道,利用ASP程序可以很灵活地传递参数,并且可以很灵活地将程序流程分割成几个单独的ASP程序,非常利于程序的调试,对ActiveX控件的支持和对DAO的强大操作能力使得利用ASP能够开发功能非常强大的程序。
什么是网站的源代码
网站源码,我们可以把它理成源文代码,就拿我们当前看到的这个网页来说吧,其实它是由一大堆的源代码组成,通过我们的IE(Microsoft Internet Explorer)浏览器(或服务器)翻译成现在我们所看到的这个样子。
网站源码也分为两种,一种是动态源码如:ASP,PHP,JSP,.NET,CGI等,一种是静态源码如:HTML等。
什么是动态源码呢?最大的特点就是能够和用户之间互动。比如说网易的信箱,张三登陆的时候,会看到欢迎光临张三,李四又登陆了,李四又看到欢迎光临李四,其实他们两个人登陆的是一个页面,这个就是动态源码的好处,如果要是用静态源码,好么网易有几百万的邮箱用户,每个人做一个页面那要多少页啊?动态源码不单单只有这么一点用处,比如说我们常见的一些论坛、留言本、计数器、聊天室等,都是由动态源码开发的。
什么是静态源码呢,比如说我们当前看到的这个网页他就是静态的源码,静态源码无法实现以上的那些功能。
现在有不少源码下载站,提供别人开发好的源码让我们下载。他们开发的都不错,美工也相当不错,基本上下载下来,只要稍加改动就可以使用了,更方便了我们建站,您可以跟据自己所需去下载,更重要的是,要先看看您自己使用的网站空间,是那一种的,比如说您使用的是ASP空间,那么您一定要下载ASP源码,不然下载别的是不能运行的。。
关于asp聊天室源码和asp源码怎么用的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。