欢迎光临
我们一直在努力

手把手教你建ASP语音聊天室

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

第一步:下载语音聊天室服务器端程序,我们要用的是bchat工作室的bchat server。

1.进入http://bchat.yinsha.com/页面;

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,下载地址http://bchat.yinsha.com

程序设计: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=http://+wwwhost+:+pport+/;

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

%>

第四步:在浏览器中输入

http://localhost/bchat/index.asp

看到结果了吗?

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