10.server对象与file access组件.ppt
文本预览下载声明
* * 第10章 Server对象与File Access组件 在ASP中,当处理到web服务器上的特定任务,特别是一些与服务器的环境和处理活动有关的任务的时候,需要用到server 对象。 Server对象只有scripttimeout一个属性,用于设定当服务器过于忙碌或者asp程序有问题时,程序的超时时间,这里不作介绍。 Server对象有多个方法,分别为:CreateObject,MapPath,HtmlEncode,URLEncode,Exexute,Transfer等,前两者使用最为频繁。 CreateObject是server对象中最重要的方法,前已述及:ASP中有大量内置对象和组件,同时也可以使用许多第三方组件。其中对象是可以直接引用的,而组件必须先创建其对象实例再引用,而createobject的作用就是创建对象实例。 用法:server.createobject(objectparameter) 如:创建一个到数据库的连接,一般先要执行以下语句: % set myconn=server.createobject(“ADODB.connection”) % 执行完毕以后,就可以使用变量myconn做为对象名来引用了。 当对应 asp页执行完毕后,相应的对象也就撤销了,也可以使用 % set 对象名= nothing %的方法显式撤销对象 Createobject方法在后面将反复用到。 MapPath方法:作用:将指定的虚拟路径转换为实际的物理路径,以便于相关操作。例如: % Path=server.mappath(a1.asp) Response.write 本文件的实际路径为:path % 注意以下的区别:假设a1.asp文件位于网站根目录的11子目录中 % Path=server.mappath(a1.asp) Response.write 本文件的实际路径为:path % 和 % Path=server.mappath(“\a1.asp) Response.write 本文件的实际路径为:path % 文件名前有“\”和没有“\”,效果是不一样的,如果有“\”,则直接返回网站的根目录路径加上当前文件名,而没有“\”的话,返回的是当前所在的实际路径加上文件名。 因此,一般情况下,为了得到文件的实际地址,是不能加“\”的 Htmlencode方法也时有使用,比如我们要做一个关于网页制作的asp网上教程,需要在网页中显示h1,br等字样,但是正常情况下,这些文字是被作为html标签来处理的,此时,就需要借助于htmlencode方法来实现 试比较以下两段代码 % Response.write hr此处有两条水平线hr % 与 % Response.write server.htmlencode(hr此处有两条水平线hr ) % 即可理解 关于Server对象就介绍到这里,至此,ASP中最常用的5大对象都已介绍完毕,下面介绍File Access组件。 我们假设某个用户希望使用ASP创建一个留言簿,但是该用户并不会使用Access数据库来存储客户的留言资料(当然我们现在暂时也不会),很自然地,该用户想到,能否将每个来访者的留言记录到某个文本文件中,需要时即可打开查看呢?这就需要通过File Access组件来实现了。 再如,某个客户不会使用FTP,他希望能有个直观的界面,能让自己在网站里创建目录,进行相关的文件管理,要实现这个功能,也必须通过File Access组件。 简而言之,File Access组件是ASP对服务器端的文件进行直接读写的一个有力的工具。 由于File Access是组件不是对象,它本身也包含了若干对象,因此,必须先使用Server.createobject方法创建一个相应的对象,然后才能引用,这一点务必要注意。 为了能够读写、管理文件,FA提供了一系列对象,包括:Drive、Folder、File、FileSystemObject、TextStream等,每种对象又具有自己的方法和属性,为了简化起见,我们这里只讨论后两者。 FileSystemObject对象 简称FSO对象,功能全面而强大,了解了FSO一般就可以不去研究Drive、Folder、File等对象。(正是由于其功能强大,很多网站空间不支持FSO,以防止恶意的客户或程序进行破坏) 对于FSO的使用,我们需要先创建一个对象 Set fso=Server.CreateObject(Scripting.FileSystemObject) 注意前面这个变量名字是随便起的,你当然也可以写为其他的……,以后就可以使用如fso.xxx来引用fso的各种方法了 下面介绍使用FSO如何管理文件夹 FSO有四种方法
显示全部