快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

ASP的对象结构

现在我们要系统地了解一下ASP的对象结构,然后,大家就可以举一反三,不用我过多解释每一个例子了。这一部分,可能有些困难。

  一、Request
  Request对象把客户信息保存在几个集合中,供ASP应用使用。通用的访问方式为:Request.Collection("membername")
  当你不指定集合名时,以(1)QueryString,(2)Form,(3)Cookie和(4)ServerVariable
的顺序搜索所有集合,当发现第一个匹配的变量时,就认定他是要引用的成员。当然,为了提高效率,你最好显式指定是那个集合中的成员。
  QueryString集合
  当HTML表单使用GET方式向ASP文件传递数据时,数据被保存在集合QueryString中。其成员可以具有与之相关的多个值,也就是说,同一个表单中,多个元素可以有一样的名字,下面的代码访问这些数据:
<%For each item in Request.QueryString("Name")
Response.write Item &"<br>"
Next %>
  Form集合
  当表单用POST方式时,数据被保存在Form集合中。
  ServerVariable集合
  保存了随HTTP哀求一起传送HTTP头的信息,可以通过他获取有关浏览器的信息,主要成员有:
REMOTE_ADDR 远程主机IP地址
REMOTE_HOST 远程主机名称
REMOTE_USER 客户名称
REQUEST_METHOD 哀求方式(如POST,GET,HEAD)
SERVER_NAME 服务器名
SERVER_PROTOCOL 服务器版本号(如HTTP/1。0)

  二、Response对象
  用来控制向客户返回的HTML的内容,有若干属性和方式。下面介绍我认为重要的:
  Buffer属性
  假如为True,则Response的内容要写入缓冲区,当脚本处理完时再发给客户。
  Status属性
传递HTTP Response报文的状态。服务器返回的状态代码由三位数字组成,可以用于测试阶段和转变控制到其他站点(即Forward)
  Write方式
  向客户输出HTML,可以是任何合法的HTML脚本。
  Redirect方式
  使浏览器重新定向到另外一个URL上,如:
<%browsetype=Request.ServerVariables("HTTP_USER_AGENT")
IF Left(browsetype,11)="Mozilla/2.0" then
Response.Redirect "FancyStart.asp"
Else
Response.Redirect "OldStart.asp"
End if%>
  Clear方式
  假如设Buffer属性为True,则Clear方式清晰所有缓冲区内容。
  Flush方式
  将缓冲内容立刻发送给客户。
  End方式
  当Active Server碰到该方式时,立刻停止处理ASP文件,假如有缓冲,立刻发送内容到客户。
  BinaryWrite方式
  输出二进制数据

  三、Request对象和Response对象的Cookies集合
  1.写入Cookies
  Response.Cookies("Cookie名称")[("键名称").属性]=值
  假如该Cookie已经存在,则值被新值替代,否则,创建该cookie
  例如:
<% Response.Cookies("NewCookie")="New Cookie Value" %>
  2.读取Cookies
  如:
<%=Request.Cookies("NewCookie")%>
  Cookie还有一些属性,请参见有关资料。

  四、Application对象
  Active Server应用程序是虚拟目录及其子目录下的所有文件,即一个WEB。可以使用Application对象在应用软件的所有用户中共享信息,并可以在服务器运行期间持久地保存数据。他有一些控制访问应用层数据的方式和事件。
  Application本身没有内置属性,可以有用户定义:Application("属性名")=值
  保存在Application对象中的数据可以被Application的所有用户读取。如用来做访问记数:Application("aVisits")=Application("aVisits")+1
  方式有两个:
  Lock:
  当用户调用Lock时,只有当前用户能够编辑或增加Application对象的属性。
  Unlock:
  一定要记住,调用了Lock,完成时一定要调用Unlock.
  事件也有两个:
  Application_OnStart事件:应用程序启动时调用。
  Application_OnStart事件:应用程序终止时调用。
  这两个事件再加上Session的两个事件的处理程序都放在文件Global.asp中,一个Web应用只有一个Global.asa文件,且放在该应用的根目录下。一个Global.asp文件的例子如下:
<Script Language="VBScript" Runat="Server">
Sub Application_OnStart
Dim laChats(15)
Application("gaChats")=maChats
Application("giCounter")=0
End Sub

  五、Session对象
  Active Server使用会话设置为使用应用程序的单个用户持久保持数据。当用户哀求Active Server应用程序中ASP文件的URL时,要启动Session。在缺省情况下,假如没有用户哀求,则服务器只保留Session20分钟。用户也可以通过设Session的属性TimeOut来改变。或显示地调用Session.Abandon方式来释放Session对象。
  SessionID属性
  唯一标识一个会话的标识符。
  TimeOut属性
  定义Session保留的时限,单位为分钟,如Session.TimeOut=10
  像Application相同,Session也可由用户来定义属性。
  Session的唯一方式是Abandon,用来取消用户的Session对象,并释放其占用的服务器资源。如:<%Session.Abandon%>
  事件有Session_OnStart和Session_OnEnd,其处理程序应放在文件Glabal.asa中。

  六、Server对象
  1.HTMLEncode方式
  对特定的字符串进行HTML编码,如你本来要显示下列内容:
The Underline tag(<u></u>) is used to underline the surrounded text.
  但很可能实际显示成:
The Underline tag() is used to underline the surrounded text.
  为了避免这种情况,可以调用Server对象的HTMLEncode方式,如:
<%
Response.Write Server.HTMLEncode("The Underline tag(<U></U>) is used to underline the surrounded text.")
%>
  2.URLEncode方式
  根据URL规则对字符串进行编码。当字符串数据以URL格式传递到服务器时,串中间不能有空格,不能有特别字符,这时,你就必须用URL编码。
  3.CreateObject方式
  用于创建已注册到服务器机器上的ActiveX组件例程,这恐怕是最重要的一个方式了:
  句法如下:
Server.CreateObject("ComponentName")
  可以作为例程启动的组件可以是ActiveX能够使用的所有内置组件,实际上是存在于服务器上的任何ActiveX组件。比如,要使用金融计算,步骤如下:
  1.创建对象
<%
set x=server.createobject("extend.financial");
%>
  2.调用对象的方式
<%
set x=server.createobject("extend.financial")
response.write Format(x.futval(.07/12,200,-500),"###,###,##0.00")
%>
  3.释放例程
<%
set x=Nothing
%>

  七、FileSystem和TextStream对象
  FileSystem和TextStream对象可用于建立对文件系统的访问,并提供顺序访问文件的机制。FileSystem没有属性,只有两个方式,第一个方式是CreateTextFile方式,可以在宿主机上创建新的文本文件,并返回TextStream对象以提供对新创建文件的访问机制。第二个是OpenTextFile方式,用于打开文本文件供顺序访问并返回一个TextStream对象。如:
<%
set fsFilesys=CreateObject("Scripting.FileSystemObject")
set tsCoffee=fsFilesys.CreateTextFile("c:coffe.txt",True)
tsCoffee.WriteLine("Man,I Could use some coffee.")
tsCoffee.Close
%>
  TextStream对象的使用有:
  AtEndOfLine:假如文件当前字符处在行的末尾则返回true
  AtEndOfScreen:假如当前字符在文件的末尾则返回true
  Column:返回当前字符的列号
  Line:返回当前字符的行号
  TextStream对象的方式为:
  Close:关闭并释放TextStream对象
  Read:从一个文件中读取给定个数的字符到一个变量中
  ReadAll:读取文件的全部内容到一个变量中
  ReadLine:读取给定行号的内容到一个变量中
  Skip:跳过给定个数的字符
  SkipLine:跳过给顶的行书
  Write:写如字符串
  WriteLine:写入以换行结束的字符串
  WriteBlankLines:写入给顶数量的空格
返回类别: 教程
上一教程: ASP与数据库应用(简朴入门)
下一教程: 如何检测用户第一次访问我的网站并显示友好信息

您可以阅读与"ASP的对象结构"相关的教程:
· ASP代码的对象化
· 熟悉ASP内置的对象
· 使用索引服务器- 使用索引服务器的对象
· 树型结构在ASP中的简朴解决
· 调试JS用的对象属性显示器
    微笑服务 优质保证 索取样品