标题标题  显示论坛会员列表名单  搜索论坛搜索  HelpHelp
  注册注册  登入登入
ASP教学区
 DoReMe : ASP教学区
主题 话题: 第十七章 对Active Server Pages的Applications的处理 回复发表新主题
作者
贴子内容 << Prev Topic下一个主题 >>
bibi
Senior Member
Senior Member


加入: 2005/1月/07
Online Status: Offline
回复: 103
Posted: 2005/1月/07 9:46上午 | IP记录 引用 bibi

在这章里面,你会学到怎样使用applications。第一部分是个预览。第二部分就是学会它的方法、集合以及事件。最后,第 三部分是两个应用程序示例,一个是简单的多人聊天室,另一个是网站实时用户状况显示。

什么是Application?

微软希望用户将Active Server Pages作为一种常规的编程语言。当你创建了一个 Active Server Pages的时候,你就创建了一个类似子程序这样的东西。当你创建 了一组Active Server Pages,那么你就是创建了一个application。

因此,一个Application就是在硬盘上的一组主页以及ASP文件,当一个Active Server Pages加入了一个application,那么它就拥有了作为单独主页所无法拥有 的属性。下面是Active Server Pages的application的一些特性:

■数据可以在application内部共享,因此可以覆盖多个用户。

■一个Application包含事件可以触发某些applicatin脚本。

■一个对象的例子可以被整个application共享。

■个别的application可以用Internet Service Manager来设置而获得不同属性

■单独的application可以隔离出来在他们自己的内存中运行,这就是说,如果一个人的application遭到破坏, 不会影响其它人。

■你可以停止一个application(将其所有组件从内存中驱除)而不会影响到其它应用。

一个网站可以有不止一个application。典型的,你可以根据针对于个别任务的一些ASP文件创建个别的applicat ion。例如,你也许创建了一个application来适用于全部公用用户,而再次创建另外一个来限制在网络管理员的范围。

你还可以在位于同一台服务器的不同网站创建不同的application。例如,在一台服务器上为Tom的在线书市和Jerry 的在线花店各创建一个application。

一个Application的跟目录由Internet Service Manager来设定,这时,这个目录以及其 子目录均属于这个application,不过,如果某一个子目录也进行了设定,将被认为是另一个application,换句 话说,没有两个application可以重迭交错。

当你首先安装了Active Server Pages后,只有几个默认的Application。例如,为你的默认网站创建了一个Application。不过,你可以根 据自己的要求创建随意多个Application。

下面是设定一个Active Server Pages application的方法:

1.从Microsoft Internet Information Server程序组中执行Internet Service Manager。

2.在树型导航栏中点击你的默认站点名称(如果没有做过改变,名称应当是:Default Web Site)

3,选择一个存在的路径(你需要创建Application的路径),或者创建一个这样的路径。创建方式略。

4.点击属性图标或者右键该目录名称然后选择属性项

5.在属性表中,选择主目录或者虚拟目录项

6.在Application Setting区中,点上Creat按钮。

注意

这时你需要为这个application进行命名,不过这种命名只是为了计算机内部管理器的认定,和程序脚本没有关系。

你现在成功的创建了一个新的Application。创建后,你就可以在Application设置区域中进行属性设置(见图1 7.1),例如限定是否使用Session和进行Buffer输出等等。

另外,这种设置之后就可以使用自己的Global.asa文件来创建自己的事件。在后面的小节中有详细介绍。

图17.1 创建一个Application

 

 

Back to Top 查看 bibi's 资料 搜索其它贴子 bibi 访问 bibi's
 
bibi
Senior Member
Senior Member


加入: 2005/1月/07
Online Status: Offline
回复: 103
Posted: 2005/1月/07 9:46上午 | IP记录 引用 bibi

使用Application对像

Application对像拥有与Application所有相关的集合,方法,以及事件。下面的部分你将学会怎样使用Appl ication对像来创建application变量和application事件。

对Application变量的介绍

一个application变量包含的数据可以在整个application中被所有用户享用。Application对像包括 任何类型,包括队列和对象。一个application变量和一个Session变量区别有以下两点:

■和Session不同的是,Application变量不需要Cookies。网站不需要利用Application变量来跟 踪用户进程。这就意味著使用起来很安心,可以适应任何浏览器。

■和一个Session变量不同的是,application变量可以被多个用户共享。从一个用户接受到的applicatio n变量可以传递给另外的用户。

注意

对Session的了解在第16章。

下面是利用Application的普通应用:

■一个application变量可以用来在每个主页上显示瞬态信息,例如,你可以利用application变量来对于每一个 主页进行当日新闻的更新。

■Application可以用来记录广告条被点击的时间和次数。「参看第21章」

■Application可以从数据库中读取数据,例如,你可以从你的网站的数据库中接受销售品目录然后利用applicati on变量显示在多个主页上。

■一个Application变量可以用来统计目前上站人数,可以参见后面的小节。

■一个application变量可以用于网站上不同用户间的通讯,你这样就可以创建多用户游戏以及多用户聊天室,可以参看后面 聊天室的应用小节。

创建和读取Application变量

其实这部分相当简单,因为读者您读到这里已经有相当基础了,创建读取过程和以往的Session变量没什么区别,见下面的例子应 用:

<HTML>

<HEAD><TITLE>Application示例</TITLE></HEA D>

<BODY>

<%

Application(「Greeting」)=」Welcome!」

%>

<%=Application(「Greeting」)%>

</BODY>

</HTML>

在这个示例中,一个新的名字为Greeting的application变量被创建,赋值为」Welcome!」。然后这个变量 值」Welcome!」显示在浏览器上。

一旦变量被赋值,它就可以在任何ASP文件中显示出来,即使是其它用户调用。例如,这时候另外一个用户调用下面的ASP文件,也 可以显示」Welcome!」信息:

<HTML>

<HEAD><TITLE>另外一页</TITLE></HEAD>

<BODY>

<%=Application(「Greeting」) %>

</BODY>

</HTML>

很重要的需要理解的是,由于Application变量是对于多用户共享的,因此与Session变量有著本质的区别。同时ap plication变量不会因为某一个甚至全部用户离开就消失,一旦建立了application变量,那么它就会一直存在到网 站关闭或者这个application被卸载。这经常可能是几周或者几个月。

由于application变量创建时不会自己消亡,因此你就要特别小心的使用,这可是占用内存的,你可要斟酌使用以免降低服务 器对其它工作的响应速度。

注意

Application变量终止的情况有三种,服务被终止,Global.asa被改变,或者该Application被卸载。

为了更好的了解多用户共享这个概念,,我们拿出下面这个脚本例子:

<%

Randomize

If INT(2*RND)=1 THEN

Application(「FavoriteColor」)=」Blue」

Else

Application(「FavoriteColor」)=」Red」

END IF

%>

很容易理解的是,如果将Application换成Session,那么对于每一个单独用户来说,值很可能是不一样的,但是这里 面由于是Application,那么不管多少个用户调用该脚本,大家的该变量都是一样的,即使后来的访问者调用时颜色与前面人 调用的不一样,那么由于这种共享变量,自然对于其它人来说就相当于进行变量值的改变。不过,现在细心的读者也许会发现这里面有些 问题,即:如果多人同时调用,那么岂不是要乱了。例如下面这个例子:假如你正在使用一个application来记录一个广告条 的点击次数,如果两个人正在同时点击,那么冲突怎么办?

<%

NumClicks=Application(「BannerClicks」)

NumClicks=NumClicks+1

Application(「BannerClicks」)=NumClicks

%>

可以看出,每一次点击,该变量值加1,但是如果这个脚本被同时进行,即多人同时点击,幸好有两个Application方法专门 应付这种问题,分别是Lock方法和Unclock方法,用来暂时防止其它用户对application变量的改变,那么前面的 例子正确形式应该如下:

<%

Application.Lock

NumClicks=Application(「BannerClicks」)

NumClicks=NumClicks+1

Application(「BannerClicks」)=NumClicks

Application.UnLock

%>

脚本的第一行将application进行lock操作,那么其它用户就无法对application变量进行修改直到Uncl ock操作或者该ASP文件执行结束。

请注意你不能针对个别变量进行Lock操作,也就是说,要不全都Lock,要不全都不。前面的脚本其实也就是防止用户修改该Ap plication的所有变量。

了解Lock方法注意不是永远不让其它用户进行Application变量的修改,而是让修改过程连续有序,防止冲突。

Back to Top 查看 bibi's 资料 搜索其它贴子 bibi 访问 bibi's
 
bibi
Senior Member
Senior Member


加入: 2005/1月/07
Online Status: Offline
回复: 103
Posted: 2005/1月/07 9:47上午 | IP记录 引用 bibi

全部显示Application对像

绝大部分Application变量存放于contents集合中,当你创建一个新的application变量,其实就是在c ontents集合中添加了一项,例如,下面两个脚本是等效的:

<%Application(「Mycompany」)=」北京迈至科网络」>

<%Application.contents(「Mycompany」)=」北京迈至科网络」>

由于Application变量存放在集合里面,那么如果想要全部显示,其方法用户应当已经知道了,不错,和以前的一样,例如F or Each循环。

<%

FOR EACH thing IN Application.Contents

Response.Write(「<BR>」&thing&Application.Conten ts(thing))

NEXT

%>

显示结果无须赘述,自然,以前提到的显示集合中所有变量的其它方法一样适用,包括进行统计的Count方法。

Back to Top 查看 bibi's 资料 搜索其它贴子 bibi 访问 bibi's
 
bibi
Senior Member
Senior Member


加入: 2005/1月/07
Online Status: Offline
回复: 103
Posted: 2005/1月/07 9:47上午 | IP记录 引用 bibi

Application事件

和Session事件一样,Application也有两个时间Application_OnStart和Applicatio n_OnEnd,第一个事件在Application开始时触发,后者在结束时触发。

什么时候application开始呢?不,不是网站一开始,是第一个请求Application的页面被调用。

一个Application的OnStart事件肯定是在Session_Start事件之前的。不过,Application 不会像Session那样在一个新用户请求后就触发,Application只触发一次,就是第一个用户的第一次请求。

Application_OnEnd事件只有在服务终止或者该application卸载时才会触发,例如,你在Interne t Service Manager中关闭了网络服务。,那么Application_OnEnd事件就会触发,如果你针对单独目的使用applic ation,这个事件可以通过application在利用Unload按钮卸载时进行触发。一个Application_On End事件肯定发生在Session_OnEnd事件之后。

Application_OnStart和Application_OnEnd事件都是触发一个也是唯一一个脚本程序。而且这些 事件都在一个文件中,那就是在Session事件中提到的Global.asa文件,下面为了加深了解,再次给出其结构:

<SCRIPT LANGUAGE=VBScript RUNAT=Server>

SUB Application_OnStart

END SUB

</SCRIPT>

<SCRIPT LANGUAGE=VBScript RUNAT=Server>

SUB Application_OnEnd

END SUB

</SCRIPT>

<SCRIPT LANGUAGE=VBScript RUNAT=Server>

SUB Session_OnStart

END SUB

</SCRIPT>

<SCRIPT LANGUAGE=VBScript RUNAT=Server>

SUB Session_OnEnd

END SUB

</SCRIPT>

有关Session的事件我们认为你已经在第16章学的很不错了,那么其余的两个就是我们现在要介绍的Application事 件。

这里面和Session事件一样限制的是,你不能使用HTML标志,不能进行任何输出,不能将语句写出子程序或者写成其它方式。 因此,编写时要特别小心。

Application_Onstart事件一般是用来初始化这个Application的变量,例如下面用Applicati on_Onstart事件和Session_OnStart事件来进行访问人数统计:

<Script Language=VBScript RUNAT=Server>

SUB Application_OnStart

Application(「TotalUsers」)=0

END SUB

</SCRIPT>

<SCRIPT Language=VBScript RUNAT=Server>

SUB Session_OnStart

Application.Lock

Application(「TotalUsers」)=Application(「TotalUsers」)+1

Application.Unclock

END SUB

</SCRIPT>

在Application_OnStart事件中只有一个语句将TotalUsers变量置0,只有网站开始后这个脚本才能执行 。

Session_OnStart事件在每一个用户到达后都都将TotalUsers加1,同时使用Lock方法防止冲突。

这样,在你希望显示访问人数的页面上,加入下面脚本:

<%=Application(「TotalUsers」) %>

Back to Top 查看 bibi's 资料 搜索其它贴子 bibi 访问 bibi's
 
bibi
Senior Member
Senior Member


加入: 2005/1月/07
Online Status: Offline
回复: 103
Posted: 2005/1月/07 9:47上午 | IP记录 引用 bibi

聊天室应用

在这个部分以及后面部分,你会学到怎样利用Application对像进行实际应用的例子:一个聊天室和实时网络用户状态检测。 这些只是对一些技术特点的讨论,不过很有可能这些例子适用于您的网站。

最能打动用户一次次进入你的网站的的是建立一种网络相互通讯的感觉。其中最能说明问题的就是多人聊天室。

注意

下面这个例子当前服务器上用在NetScape4.0调试可能会有问题,但是正常使用不会出错(谁会从服务器上进入聊天室?反正 访问者不可能采用这种途径)

这个聊天室允许多用户实时进行信息交流,所有用户可以看到彼此的信息,同样,可以增加这些信息(见图17.2)。

图17.2 聊天室网页

 

 

 

 

 

 

 

 

 

 

 

 

 

你需要为这个聊天室创建三个文件,下面是你要创建和修改的文件列表:

■聊天室主页,也就是确立两个分屏及其名称,和分屏方式。

■显示页,显示共有信息并每隔5秒种进行更新。

■信息页,允许用户发出新的信息,这里面包括一个用于输入的文本框。

■Global.asa文件。将改变Application_OnStart事件脚本来进行初始化操作。

Back to Top 查看 bibi's 资料 搜索其它贴子 bibi 访问 bibi's
 
bibi
Senior Member
Senior Member


加入: 2005/1月/07
Online Status: Offline
回复: 103
Posted: 2005/1月/07 9:48上午 | IP记录 引用 bibi

创建聊天室主页

首先要创建一个调用分屏的主页,当然这也是最简单的,由于这部分不需要脚本程序,只要命名为chatpage.cfm就可以了, 见例子17.1。

<HTML>

<HEAD><TITLE>迈至科聊天室示例</TITLE></HEAD>

<FRAMESET ROWS=」*,100」>

<FRAME SRC=」Display.asp」 name=」Toppage」>

<FRAME SRC=」Message.asp」 name=」Bottompage」>

</FRAMESET>

</HTML>

为什么一定要分屏呢?因为显示页每隔5秒就更新,而还需要进行信息输出,如果在一个主页上,那么用户肯定会因为信息总是只写了一 半就刷新而气疯的。

Back to Top 查看 bibi's 资料 搜索其它贴子 bibi 访问 bibi's
 
bibi
Senior Member
Senior Member


加入: 2005/1月/07
Online Status: Offline
回复: 103
Posted: 2005/1月/07 9:48上午 | IP记录 引用 bibi

修改Global.asa文件

为了让这个应用能够进行,必须对Global.asa进行相应修改来设置一些变量初值。这些变量必须是application类 型的因为这需要多用户共享,第一个application变量名称是Talk,它其实是所有信息的队列,Talk队列的赋值就是 TempArray ,同时Tplace是当前队列的位置,初值为0,脚本如下:

<Script Language=VBScript RUNAT=Server>

Sub Application_OnStart

Dim TempArray(5)

Application(「Talk」)=TempArray

Application(「Tplace」)=0

END SUB

</SCRIPT>

Back to Top 查看 bibi's 资料 搜索其它贴子 bibi 访问 bibi's
 
bibi
Senior Member
Senior Member


加入: 2005/1月/07
Online Status: Offline
回复: 103
Posted: 2005/1月/07 9:48上午 | IP记录 引用 bibi

创建信息发送页

信息发送页的目的就是允许用户发送新的信息,用户在文本框中添入要发送的信息,然后按发送按钮就进行自身调用回到同样的页面(当 然,脚本里面包括了信息的处理发送)。

这个脚本做两件事情,首先,检查是否有多于4个信息存在。如果多于的话,将Tplace置0,这样防止Talk队列的信息过于繁 多见图17.3)。

然后,在Talk队列的Tplace位置中添加新的信息,同时将Tplace指向下一个位置。

下面是该例子完整的脚本程序

例17.2

<%

IF not Request.Form(「message」)=」」 THEN

Application.Lock

IF Application(「Tplace」)>4 THEN
Application(「Tplace」)=0

END IF

TempArray=Application(「Talk」)

TempArray(Application(「Tplace」))=Request.Form(「Message」)

Application(「Talk」)=TempArray

Application(「Tplace」)=Application(「Tplace」)+1

END IF

%>

<HTML>

<HEAD><TITLE>迈至科聊天室应用示例之信息发送</TITLE></H EAD>

<BODY BGCOLOR=」LIGHTBLUE」>

<FORM Method=」POST」 Action=」message.asp」>

<Input Name=」message」 Type=Text SIZE=50>

<input type=submit Value=」发送」>

</form>

</Body>

</html>

图17.3 信息发送页

 

Back to Top 查看 bibi's 资料 搜索其它贴子 bibi 访问 bibi's
 
bibi
Senior Member
Senior Member


加入: 2005/1月/07
Online Status: Offline
回复: 103
Posted: 2005/1月/07 9:49上午 | IP记录 引用 bibi

创建显示页

最后需要创建一个显示这些信息的页面,这个页面将所有的访问者提交的信息显示出来。这个页面每隔5秒钟自动刷新,这使用了客户段 牵引请注意这里面HTML的<META>标记所包含的语句,(在Active Server Page中添加一个Refresh的Header)

下面的第一个脚本用来确认当前ASP文件的全部URL地址,这里面还是使用了ServerVariable集合并将得到的全部路 径加文件名赋值给MySelf的变量。这个变量就用于在<META>标记包含的语句中指示更新的文件名称及路径。

后面的主要脚本用来显示Talk队列,即所有人发送的信息,这里面用的是For…Next循环(见图17.4)。例子17.3是 显示页的全部Active Server Pages代码。

例17.3:

<%

MyServer=Request.ServerVariables(「SERVER_NAME」)

MyPath=Request.ServerVariables(「SCRIPT_NAME」)

MySelf=」Http://」&MyServer&MyPath

%>

<HTML>

<HEAD>

<META HTTP-EQUIV=」REFRESH」 CONTENT=」5;<%=MySelf%>」>

<TITLE>迈至科聊天室应用示例之显示页</TITLE>

</HEAD>

<BODY>

<P Align=Right><%=NOW%></P>

<%

TempArray=Application(「Talk」)

For i=0 to Application(「Talk」)-1

Response.Write(「<p>」&Temparray(i))

NEXT

%>

</BODY>

</HTML>

 

 

 

 

 

 

 

 

 

 

 

图17.4 显示页

这样,就可以每隔5秒钟将队列中的消息显示一遍,达到近似于实时交流的目的。

 

扩展聊天室项目

有很多种方法可以使这种聊天室更加完备,比如说,现在每次只能显示5个信息,那么如果访问者比较多,这就很不够了,因此你可以在 最初的Global.asa中将TempArray队列设得大一些,然后在发送信息页相应部分进行修改其限制数目。

这个聊天室的信息发送显然是允许HTML格式的,当然,你可以替访问者考虑一些,比如说,用CheckBox来允许访问者选择自 己喜欢的信息发送颜色。

最后,相当重要的是,用户发送的信息应当含有用户代号,不过,这也并不困难,还记得Session变量是干什么的吗?给每个用户 登录时创建一个Session变量记录其代号,然后每次信息发送时连同该Session变量一同发送。

注意

本书的很多例子都可以在http://aspsite.com中找到。

Back to Top 查看 bibi's 资料 搜索其它贴子 bibi 访问 bibi's
 
bibi
Senior Member
Senior Member


加入: 2005/1月/07
Online Status: Offline
回复: 103
Posted: 2005/1月/07 9:49上午 | IP记录 引用 bibi

谁在站上的应用

好的站长都有一个很明确的目的,那就是,希望更多的访问者进入他的站点。那么,如果能够了解当前有多少用户在站上以及在作什么就 十分有必要了,这样可以根据观察的信息来完善自己的站点。

现在这个示例就是实时的统计当前访问者以及每一个访问者刚进行的主页请求。

见下面显示结果图17.5:

图17.5 谁在在线

 

 

 

这个示例说明了怎样将一个对像赋值给一个application对象,一个字典对像用来储存访问者信息,当访问者发出了一个请求 ,这个对象就进行了更新,下面是这个应用所需要制作和修改的文件列表:

■Global.asa文件:针对这个应用Application_OnStart事件和Application_OnEnd事 件都需要进行修改。

■GrabStates文件::这个文件更新Dictionary对象,你需要在每一个想要跟踪的ASP文件首包含这个脚本。

■WhosOn页:就是显示目前站上用户以及目前状态。

修改Global.asa文件

做这个应用项目,你需要修改两个脚本,首先是创建一个Dictionary对象,用来存储访问者信息,由于这个对象的创建只需要 一次,那么可以在application_OnStart事件中进行:

<SCRIPT LANGUAGE=VbScript RUNAT=Server>

SUB Application_OnStart

Set Application(「Stats」)=Server.CreateObject(「Scripting.Dictiona ry」)

END SUB

</SCRIPT>

只是添加了一句脚本语言。这个语句将新创建的一个Dictionary事例赋值给名字为stats的application变量 ,创建之后,在整个应用中就可以一直使用了。

注意

在application的范围内创建对象的更多方法将在下一章中有详尽的讨论。

在一个用户的Session结束时,我们必须把他的信息清除,这就需要修改Session_OnEnd对像:

<SCRIPT LANGUAGE=VBScript RUNAT=Server>

SUB Session_OnEnd

IF Application(「Stats」).Exists(Session.SessionID) THEN

Application.Lock

Application(「Stats」).Remove(Session.SessionID)

Application.UnLock

END IF

END SUB

</SCRIPT>

用户将根据他们的SessionID来被跟踪,字典中的名字为stats的键与相应的Session Ids相对应,首先检查字典中是否有有关这个已经离开的SessionID的信息,如果有,则进行删除(因为这个用户Sessi on已经结束了)

创建GrabStats文件

想要决定当前页的浏览者,就必须在每一个要进行跟踪的页面前包含一个脚本文件。这个文件其实只有一行语句,见例子17.4。

例子17.4 GrabStats.asp

<%

Application(「Stats」).item(「Session.SessionID)=Request.Server Variables(「SCRIPT_NAME」)

%>

这个脚本将当前页的路径加入到Dictionary对像中去。当前路径依然是通过ServerVariable变量获得。然后, 该变量值赋值给字典中对应当前用户ID的键中(如果不存在,则自动创建。)

将该脚本存为GrabStats.asp之后,那么在你需要进行跟踪的ASP文件首行加入这么一句代码<!--#INCL UDE VIRTUAL=」GrabStats.asp」 a

创建显示谁在站上的页面

这个主页就是显示当前使用者。显示的是每一个使用者的SessionID和他的最后一次请求的页面,下面是这个显示页面的全部代 码:

例17.5 WhosOn.asp

<!-- #INCLUDE VIRTUAL=」GrabStats.asp」 -->

<%

MyServer=Request.ServerVariables(「SERVER_NAME」)

MyPath=Request.ServerVariables(「SCRIPT_NAME」)

MySelf=」Http://」&MyServer&MyPath

%>

<HTML>

<HEAD>

<META HTTP-EQUIV=」REFRESH」 CONTENT=」20;<%=MySelf%>」>

<TITLE>迈至科谁在站上应用示例之显示页</TITLE>

</HEAD>

<BODY>

<% Application.Lock

Set TempStats=Application(「Stats」)

Application.Unlock

%>

<Center>

当前访问者一共<%=TempStats.Count %>个

<table Border=1 cellspacing=10>

<tr><th>访问者ID</Th><th>当前访问页</th&g t;</tr>

<%

TempItems=TempStats.Items

TempKeys=TempStats.Keys

For I=0 to UBOND(TempKeys)

%>

<tr><td><%=tempKeys(i) %></td><td><%=TempItems(i) %></td></tr>

<% next %>

</center>

</table>

</Body>

</Html>

第一行包含的文件GrabStats.asp就是前面的那一部分所创建的,也就是说,该主页的访问情况也在跟踪统计之内。第一个 脚本就是接受当前路径,没有什么可以再解释的,只是这次更新时间改为20秒而已。

第二个脚本是将application的字典对像变量存在一个临时的TempStats字典对像中,这个对象会在该页结束时自动 清除。后面的脚本则是循环显示所有的键和值。显示结果见本节部分的图17.5。

扩展这种应用

这种应用示例对于了解自己的网站访问情况是很有好处的,你可以了解当前网站上的访问者,也可以了解他们在浏览哪里方面的内容。

有很多种方式来使这种应用功能更加完备,例如,想要从SessionID中了解用户信息太难了,如果你的网站有注册登录界面,那 么在字典对像中完全可以用登录名来代替毫无表达意义的ID值。

另外,你完全可以跟踪用户访问的时间长度,这种对脚本的修改也不算复杂,例如,你只需要建立第二个application变量来 包含另一个字典对象,专门存储用户停留时间的信息。

注意

相关示例展示可以参见http://www.aspsite.com

 

总结

在这章中,你应当学会了Active Server Pages的application应用,首先是全面了解, 然后学会使用它的集合,属性以及事件。最后是两个有代表性的实例,这样你应当对一些比较高级的ASP应用有所了解并能够提升你的 网站的制作档次。



Edited by bibi 在 2005/1月/07 9:52上午
Back to Top 查看 bibi's 资料 搜索其它贴子 bibi 访问 bibi's
 

如果你想回复的话你必须首先 login
如果你还没有注册的话你必须首先 注册

  回复发表新主题
显示可打印的页面 显示可打印的页面

论坛跳转
不能 张贴新论题在这个讨论版
不能 回应论题在这个讨论版
不能 删除你的发言在这个讨论版
不能 编辑你的发言在这个讨论版
不能 新增投票标题在这个讨论版
不能 在这个讨论版投票

Edit by doreme Forums version 2004
Welcome ©2001-2004 doreme Guide

This page was generated in 0.1865 seconds.

 
保养品
保养品, Skin Care
www.elady.tw
美材批发
美材, Cosmetic
www.elady.tw/beauty_org
保养品批发
名牌保养品、保养品批发
gb.perfume.com.tw/skincare
饰品批发
饰品、饰品批发
gb.perfume.com.tw/ornament