ASP应用实例腾讯内部讲义Word格式文档下载.docx

上传人:b****4 文档编号:17167253 上传时间:2022-11-28 格式:DOCX 页数:17 大小:122.59KB
下载 相关 举报
ASP应用实例腾讯内部讲义Word格式文档下载.docx_第1页
第1页 / 共17页
ASP应用实例腾讯内部讲义Word格式文档下载.docx_第2页
第2页 / 共17页
ASP应用实例腾讯内部讲义Word格式文档下载.docx_第3页
第3页 / 共17页
ASP应用实例腾讯内部讲义Word格式文档下载.docx_第4页
第4页 / 共17页
ASP应用实例腾讯内部讲义Word格式文档下载.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

ASP应用实例腾讯内部讲义Word格式文档下载.docx

《ASP应用实例腾讯内部讲义Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《ASP应用实例腾讯内部讲义Word格式文档下载.docx(17页珍藏版)》请在冰豆网上搜索。

ASP应用实例腾讯内部讲义Word格式文档下载.docx

0'

"

可见,这个查询的返回结果是一条显示某个图片的命令,http:

//219.133.40.106/qq1_offline.gif就是表示图片所在的位置以及文件名,不同的图片代表了不同的状态。

根据您填写的resulttype的值不同,用不同的图片代表不同的状态,具体如下表:

表1状态一览表

Resulttype的值

图片

文件名

代表的含义

1

tm_offline.gif

TM用户离线

tm_online.gif

TM用户在线

2

rtx_offline.gif

s-buddy用户离线

rtx_online.gif

s-buddy用户在线

3

qq1_offline.gif

QQ用户离线

qq1_online.gif

QQ用户在线

0或4

qq_offline.gif

qq_online.gif

下面是一段获取单个用户的在线状态的完整示例代码:

html>

head>

metahttp-equiv="

Content-Type"

content="

text/html;

charset=gb2312"

>

title>

示例网页<

/title>

/head>

body>

这里显示的是QQ用户的状态,如果要更新,请刷新网页。

TM:

3621277的在线状态

scriptlanguage="

javascript"

src="

//219.133.38.16/getonline?

type=1&

qq=3621277&

resulttype=1"

<

/script>

/body>

/html>

 

从上面的代码可以看出,获取状态的命令是这句话:

Type=1&

服务器返回命令是:

该命令执行的结果将会在获取状态的命令的位置绘制一个图片,以代表客户的在线状态

2、获取多个用户的状态

获取多个用户状态的URL地址是:

其中Type=1是表示获取多个用户的状态,“Type=1&

”后面紧跟着的是您要查询的用户的QQ号码,各个号码之间必须用冒号“:

”隔开,并且必须以冒号“:

”结尾。

把上述URL地址拷贝到IE浏览器的地址栏中,回车,可以看到返回结果是:

online[0]=0;

online[1]=1;

online[2]=0;

您可以在网页中编写脚本来读取这些返回结果,编写时,您必须声明一个名为online的数组,用于读取你所要查询的QQ用户的状态。

online数组中的序号0,1,2的值分别对应URL地址中的先后QQ号码,数组的值0表示离线,1表示在线。

按照上面的例子则:

online[0]=0表示154195734用户离线;

online[1]=1表示240285461用户在线;

online[2]=0表示14137743用户离线。

根据这些返回值,您可以用图标显示他们的状态,这些图标都在http:

//219.133.40.106/地址下,具体的文件名以及他们所代表的图片及含义请参见“表1状态一览表”。

脚本示例代码:

varonline=newArray();

script>

if(online[0]==0)

document.write("

imgSRC=\"

//219.133.40.106/qq_offline.gif\"

);

else

//219.133.40.106/qq_online.gif\"

/script>

二、点击用户的状态给用户发送消息

在所显示的状态图标上,可以编写脚本,使鼠标点击该图标弹出给该用户发送消息的窗口,达到实时沟通的效果。

前提是:

您的机器必须安装了QQ或TM,如果您的QQ或TM还没启动,会提示您先启动,提示如下:

例如,在网页上显示了以下图标:

点击后,将出现以下会话窗口:

在显示图标的标签<

IMG>

的响应函数里的相应参数上填写如下参数:

tencent:

//Message/?

Menu=yes&

Exe=tm&

Uin=259966199

该参数大小写不敏感,其中Uin项表示要与之会话的QQ用户的号码;

Menu及Exe项的含义如下:

脚本示例:

functionSendMsg(sUrl)

{

try//支持

varxmlhttp=newActiveXObject("

TimwpDll.TimwpCheck"

this.location.href=sUrl;

}

catch(e)//不支持

{}

returnfalse;

imgSRC="

//219.133.40.106/qq_online.gif"

alt='

点击发送消息给对方'

onClick='

SendMsg("

Tencent:

Menu=YES&

Exe=QQ&

Uin=14137743"

)'

完整的示例代码如下:

HTML>

HEAD>

TITLE>

获取互动状态及实时发送消息示例<

/TITLE>

METAhttp-equiv=Content-Typecontent="

functionSendMsg(sUrl)

{

try//支持

{

varxmlhttp=newActiveXObject("

this.location.href=sUrl;

}

catch(e)//不支持

alert("

您没有安装QQ/TM,或者您的版本过旧,请到腾讯网站下载"

window.location="

"

;

returnfalse;

scriptsrc="

/HEAD>

BODYbgColor=#ffffffleftMargin=0topMargin=3>

CENTER>

TABLEheight=20cellSpacing=0width=640border=0>

TBODY>

TRalign=left>

TDwidth=22>

FONTface=wingdingscolor=bluesize=3>

K<

/FONT>

/TD>

TDwidth=380>

[购物]熟悉香港赛马的请进<

TDwidth=50>

QQ:

14137743<

/td>

td>

点击发送离线消息'

onClick='

SendMsg(\"

Uin=154195734\"

/SCRIPT>

TDwidth=88>

6-1111:

57<

/TR>

/TBODY>

/TABLE>

TABLEheight=20cellSpacing=0width=640bgColor=#eeefffborder=0>

[体育]6月12日天涯泡泡队比赛取消!

240285461<

if(online[1]==0)

//219.133.40.106/tm_offline.gif\"

Exe=TM&

Uin=240285461\"

//219.133.40.106/tm_online.gif\"

点击发送即时消息'

BR>

/CENTER>

/BODY>

/HTML>

三、互动状态的接口参考

目前webpresence系统有两种调用接口,一种是复杂接口,返回在线状态和调用qq(tm)的脚本;

另外一种是简单接口,只返回在线状态。

1、复杂接口(含有点击操作的)

调用接口:

=13010&

Version=1&

WebSiteName=

参数

说明

qq

用户qq号码

Exe

见下表

resulttype

取的在线状态图片的类形0:

qq;

1:

tm;

2:

s-buddy

WebSiteName

网站名称

UnionID

Menu

Version

版本号:

目前为1,默认值为1

返回内容:

//219.133.40.106/qq_offline.gif'

IsInstallQQ(\"

Menu=Yes&

UnionID=13010&

Uin=11111\"

\"

\"

命令

参数名

参数值

公用参数

YES/NO

当有多个QQ/TM启动时,是否出现UIN菜单进行选择

没有此参数时不出现选择Menu,而是取最近运行的QQ/TM

QQ/TM

启动TM还是QQ

没有此参数时启动最近运行的程序,如果没有运行,则启动QQ

Message

字符串

网站联盟ID

HostingID

为NULL则为非合作站点

UIN

QQ号码或企业号

Url

超链接

用户资料页面,链接中应该含有Uin,没有此参数则显示本地资料。

参数用加’’(单引号引起来),以区分“?

=&

网站名称,值请用’’(单引号引起来)

2、简单接口(无点击操作)

1)返回在线状态图片

调用接口:

QQ在线状态图片

TM在线状态图片

s-buddy在线状态图片

返回结果:

返回内容

QQ在线

//219.133.40.106/qq_online.gif'

QQ不在线

TM在线

//219.133.40.106/tm_online.gif'

TM不在线

//219.133.40.106/tm_offline.gif'

Sbuddy在线

//219.133.40.106/rtx_online.gif'

Sbuddy不在线

//219.133.40.106/rtx_offline.gif'

2)返回在线状态文字

不在线

在线

四、ASP应用实例

在实际应用中,具体的企业信息,它所对应的QQ号码,以及它在网页上的表现形式等信息往往是保存在后台数据库里,根据用户的浏览方式、搜索条件等以不同的方式显示出来。

于是,让网页“动”起来,实现动态显示,互动状态的表现形式将会更丰富多彩。

应用ASP技术,是实现这一目的的典型应用之一。

1、ASP的应用环境

MicrosoftActiveServerPages简称ASP,是一套微软开发的服务器端脚本环境,通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的WEB服务器应用程序。

ASP程序是在服务器端执行的,客户端通过浏览器发出请求,相应的ASP程序在服务端运行,并把运行结果返回给客户端。

ASP程序文件是以“*.asp”为后缀的文件,它必须运行在Web服务器上。

如果您的操作系统是Win95/98则请安装MSPersonalWebServer,如果是WinNT或Win2000以上的,则请安装IIS。

但安装好Web服务器后,会在系统盘下建立如下目录:

\Inetpub\wwwroot,您只需把ASP程序文件(如文件名为test.asp)拷贝到这个目录下,然后在其他机器的浏览器地址栏键入:

“http:

//服务器IP地址/test.asp”即可运行。

我们在“示例”目录下提供了一个ASP程序文件test.asp和一个数据库文件test.mdb,您只需把这两个文件拷贝到系统盘下的目录“\Inetpub\wwwroot”中,然后浏览器地址栏键入:

//服务器IP地址/test.asp”即可看到示例的结果。

2、ASP实例详解

1)应用场景

让我们设想一种场景,某个咨询网站保存了众多公司的信息,该网站面向用户提供这些公司基本信息和联系方式的查询。

某个用户希望获得所有公司的列表,期待的结果如下:

并且点击图标后,能弹出IM对话框,给这些公司的接口人留言或实时交流。

2)技术方案

由于公司数量众多,且每个公司的信息也有一定的个性化,我们考虑存储在数据库中。

在此,我们采用了Access数据库,使用ADO访问技术。

公司信息存在表Company里,表的结构定义如下:

字段名

类型

描述

CompanyID

数字

公司序号

CompanyName

文本

公司名称

文本

使用的程序:

QQ或TM

QQ

公司的联系QQ号码

ImgType

显示的图标类型,值的含义参见“表1状态一览表”

表2Company表结构

用户通过浏览器发出请求时,程序首先打开数据库,访问Company表,获取所有的公司信息,然后循环遍历记录集,提取所需要的信息,编写网页元素和脚本函数的参数,依次列出各公司的信息。

网页编写完毕后,服务器会自动返回给浏览器并正确显示。

3)编码实现

A、访问数据库

打开数据库:

%

Setconn=Server.CreateObject("

ADODB.Connection"

)‘创建ADO数据库连接实例

conn.Open"

DRIVER={MicrosoftAccessDriver(*.mdb)};

DBQ="

&

Server.MapPath("

\test.mdb"

)‘打开ADO数据库连接

%>

其中Server.MapPath("

)表示数据库的路径,注意不能是绝对路径,必须是虚拟目录。

如果您把数据库直接放在wwwroot目录下,则路径就是\test.mdb;

如果您放在自建的虚拟目录abc下,则路径就是\abc\test.mdb。

查询表:

setrs=server.CreateObject("

adodb.recordset"

)‘创建ADO数据集实例

sqlstr="

select*fromCompany"

‘查询SQL语句

rs.opensqlstr,conn,1,1‘打开一个查询记录集

遍历记录集

DimstrTemp

strTemp="

‘遍历记录集

rs.movefirst

Whilenotrs.eof

strTemp=strTemp+CStr(rs("

QQ"

))‘指定字段,从当前记录中提取值

strTemp=strTemp+"

:

rs.movenext

Wend

Response.Write(strTemp)‘输出网页元素

关闭数据库连接

rs.close

conn.close

setrs=nothing

setconn=nothing

B、编写网页元素

ASP程序的目的是动态生成一个完整的网页,用以返回给浏览器,故需要编写一个完整的网页源码。

ASP语句部分是可以嵌在网页源码中的任何地方的。

网页元素的输出有两种方式,一种是直接编写,另一种是使用ASP的Response方法。

前者不需要嵌在ASP语句中,后者需要嵌在ASP语句中(如:

%response.write(“测试<

br>

”)%>

)。

动态生成网页元素:

DimstrImgName

DimnIndex

nIndex=0

rs.movefirst

Whilenotrs.eof‘遍历记录集

response.write("

TDwidth=100>

公司ID:

response.write(rs("

CompanyID"

))

TDwidth=180>

公司名称:

CompanyName"

联系号码:

response.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1