170 likes | 312 Views
第 5 章 ASP 内置组件. 重点内容: Ad Rotator 组件 Browser Capabilities 组件 Context Linking 组件 Counters 与 Page Counter 组件. 一、基本概念.
E N D
第5章 ASP内置组件 • 重点内容: • Ad Rotator组件 • Browser Capabilities组件 • Context Linking组件 • Counters与Page Counter组件
一、基本概念 微软公司的ASP取得巨大成功的主要原因是它的可扩展性,而扩展ASP最有效的途径就是开发自定义ASP组件。在使用ASP编写服务器端应用程序时,必须依靠ActiveX组件来增强Web应用程序的功能。例如连接数据库、对数据库进行在线操作或对Web服务器上的文件系统进行操作等,所有这一切都须通过调用ASP的内置ActiveX组件或自己编写所需的组件来完成。ActiveX组件是一个存储在Web服务器上的文件,通常是指包含了可执行代码的动态链接库文件(.dll)或可执行文件(.exe),该文件包含执行某一特定任务的代码,通过指定的接口提供指定的一组服务。ASP通过组件提供的对象的方法和属性,来实现对组件的调用,这样就可以在不熟悉编写复杂程序过程的情况下,编写出功能强大的Web应用程序。 目前,ASP中常用的内置组件有:Ad Rotator、Browser Capabilities、File Access、Context Linking、Counters与Page Counter等,
一、基本概念 在Web服务器上安装完ASP环境后,就可以直接使用它自带的几个组件。组件可以提供一个或多个对象以及对象的方法和属性。使用组件提供的对象,首先要创建对象的实例并为这个新的实例分配变量名。 创建对象的实例有两种方法:(以Ad Rotator为例)。
二、Ad Rotator组件 1、基本概念 AdRotator组件实际上就是一个广告轮放器,它按照事先设定好的概率,轮流显示每幅广告。而且,使用广告轮显组件来显示广告条,维护很方便,它把程序编制与广告内容维护完全分开,这样更有利于组织内部分工的细化。 Ad:决定显示哪一幅广告。 Rotator:计划文件。可根据不同的广告内容,设置不同的网页链接。 此组件的文件名:adrot.dll 注册名为:MSWC.AdRotator 使用广告轮显组件显示广告条涉及到以下3个文件。 (1) 广告信息内容设置文件(为文本文件)。 (2) 广告超链接处理文件(为ASP文件,用于实现超链接)。 (3) 广告显示运行核心程序(为ASP文件,用于将上面两者整合)
二、Ad Rotator组件 2、使用方法——广告信息内容设置文件 广告信息内容设置文件即计划文件。因为AD Rotator组件的工作是通过读取AD Rotator计划文件来完成的,所以在此文件中一般存放显示图片的大小、地址,广告链接的地址及广告出现的概率等。且必须按固定的格式编写并保存为文本文件(.TXT)格式。 计划文件的格式: Redirect 单击广告后执行的文件 Width 广告图片的宽度(默认440像素) Height 广告图片的高度(默认60像素) Border 广告图片边框大小 * 广告图片名称 超链接的完整网址 广告说明 出现的概率 ……
二、Ad Rotator组件 2、使用方法——广告显示运行核心程序 用于编写插入广告的ASP文件,此程序包含3部分。 (1) 使用Server.CreateObject创建实例。 <% Set ad=server.createobject("MSWC.adrotator") %> (2) 设置显示图像的特征(即AdRotator组件的属性)。 格式:变量名.属性 = 值 属性有: A. Border 边框大小,0为没边框。 B. Clickable 指定广告是否有一个超链接,默认True有。 C. Targetframe 以何种方式浏览WEB页面,如:_blank新窗口。 (3) 显示广告(即AdRotator组件的方法); 只有一个:GetAdvertisement 格式:变量名. GetAdvertisement("TXT文件名") 作用: 取得广告信息。即从Rotator计划文件中获取下一个计划广告的详细说明,并将其格式化为HTML格式。
二、Ad Rotator组件 2、使用方法——广告超链接处理文件 当运行AD.ASP文件,单击某广告后,若要跳转到计划文件中的指定网页,必须要编写此文件。
三、Browser Capabilities组件 Browser Capabilities组件提供了了解客户端浏览器的功能,包括浏览器的名称、版本、支持的HTML标准等信息。Browser Capabilities组件创建一个BrowerType对象,该对象提供带有客户端网络浏览器的功能说明的用户脚本。Browser Capabilities组件的文件名为:Browscap.dll,注册名为:MSWC.BrowserType,使用方法与一般对象相似,也可使用Server对象来创建实例。 建立Browser Capabilities组件的步骤如下。 1. 创建实例 <% Set my = server.createObject("MSWC.Browsertype") %> 2. 应用实例(即Browser Capabilities组件的方法) 只有一种Value方法,用于返回一个指定属性的值。
三、Browser Capabilities组件 使用Browser Capabilities组件的工作原理 当浏览器连接到网络服务器上时,它自动发送一个包含于User-Agent页眉的请求,在此页眉中包含客户端浏览器的相关信息,而Browser Capabilities组件会把这个页眉信息与一个特殊的名为“Browscap.ini”文件相比较。 Browscap.ini文件位于服务器的“系统文件夹\ system32\inetsrv”目录下,它是一个普通的文本文件,包含了浏览器的名称、版本及所支持的HTML标准等信息。当找到相互匹配的浏览时,Browser Capabilities组件就假定所有的客户端浏览器性质和该文件所记录的一致;当找不到相匹配的信息时,Browser Capabilities组件会自动执行Browscap.ini文件内设定的默认浏览器信息,并把其当做客户端浏览器的特性。
四、Context Linking组件 当需要建立大量链接的页面为访问者提供导航时,可以采用Context Linking组件,它自动把当前显示页面的URL与存储在服务器里的文本文件的页面列表匹配起来,并且允许用户通过页面列表按正反顺序进行浏览。由于所有的详细资料均存放在一个文本文件中,因此,维护网站以及页面上的链接仅仅需要编辑这个文本文件即可。 此组件的文件名:nextlink.dll 注册名为:MSWC.NextLink 使用文件超链接组件链接URL涉及到以下3个文件。 (1) 链接列表文件(为文本文件)。 (2) 链接导航主程序页面(为ASP文件,用于建立链接的导航)。 (3) 上下页面转向文件(为ASP文件,用于实现页面间链接)。
四、Context Linking组件 使用方法 下面以实例的形式介绍如何建立文件的超链接。假设有一本小说——鹿鼎记,前5回分别存于“1.asp ~ 5.asp”5个文件中。 1. 链接列表文件 链接列表文件是一个普通的文本文件,里面记录了需要链接的各个URL地址和描述。列表中的每一个URL都对应列表文件中的一行文本,每一行都由三部分组成,它们使用一个制表符(Tab字符)进行区分,并以一个回车换行符结束,其格式为: 待链接的URL 描述 [注释] 三部分中,第一列是待链接的URL,第二列是描述,第三列为注释内容(一般省略)。
四、Context Linking组件 使用方法 2. 建立链接导航主程序页面 通过MSWC.NextLink组件自动建立与更新URL地址和目录列表内容。 程序实际包含两部分内容: (1) 使用Server.CreateObject创建实例。 <% Set NL=server.createobject("MSWC. NextLink ") %> (2) 建立与TXT文件的关联并读取TXT文件内容(即组件的方法)。表5-3列出了Context Linking组件的一些重要方法及说明。
四、Context Linking组件 使用方法 3. 实现上下页面转向 在每一个列表文件中,实现上下页的超链接。
五、Counters与Page Counter组件 在ASP中提供了两个(Counters和Page Counter组件)用来统计页面的访问次数的组件。使用这两个组件可以了解每一个页面的访问情况,也可以在这个页面上直接统计或根据自己的需要进行各种统计。 计数器Counters组件用来统计一个页面被访问的次数,如页面被请求的次数、站点的访问者、统计广告点击次数等。 此组件的文件名:Counters.dll 注册名为:MSWC.Counters Page Counter组件只能对页面的单击次数进行统计。与Counters组件不同的是,Page Counter组件不需要在Global.asa中进行任何变动,只需在调用的页面上创建该实例,然后就可以直接使用了。 此组件的文件名:Pagecnt.dll 注册名为:MSWC.PageCounter 其创建方法为: <% Set变量名=Server.CreateObject("MSWC.PageCounter") %>
五、Counters与Page Counter组件 创建计数器实例 在ASP创建一个实例,这个实例可提供很多个单独的计数器,其划分是以计数器的名称进行的。由于只需创建一个计数器组件,因此应放入Global.asa文件中,即当网站开始运行时就创建了一个计数器对象的实例。 其格式1:使用带有RUNAT="Server",ProgID="MSWC.Counters"属性的<Object>标记在Global.asa文件中创建该组件的实例。 <Object RUNAT="Server" ID="变量名" ProgID="MSWC.Counters"> </Object> 其格式2:使用Application_OnStart事件将ProgID="MSWC.Counters"传递给Server.CreateObject方法来创建该组件的实例。 <% Set变量名=Server.CreateObject("MSWC.Counters") %>
五、Counters与Page Counter组件 创建计数器实例 通过以上定义在站点上创建了一个名为MC的实例,接下来就可以通过调用Counters组件的方法来完成计数器的定义、数值的设置等。
五、Counters与Page Counter组件 统计页面的点击次数 <% set mh=server.createobject("mswc.pagecounter") response.write("该页面被访问了:" & mh.pagehit & " 次!") %>