当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP实用大全-实战ASP(1)

ASP
ASP技巧:在Access数据库中重命名表
用ASP编程实现网络内容快速查找
比较ASP生成静态HTML文件的几种方法
ASP实例:实现邮件发送普通附件和嵌入附件
如何用ASP实现去掉三个最高分和三个最低分
ASP实例:Access为后台数据库的网站统计系统
用标签替换的方法生成静态网页
例程:用ASP判断文件地址是否有效
学ASp动态网页必备:常用的38个函数
ASP教程:初次接触学习ASP脚本程序
ASPJPEG水印中关于文字水印的帮助文档(中英文对照)
ASP例子:ASP把汉字转化为拼音的函数
ASP教程:学习ASP应用Cookies的技巧
ASP入门:认识ASP程序所使用的几种脚本语言
初学者的ASP教程:常用ASP内置函数
ASP初级教程之ASP对表单和用户输入的处理
学习ASP文件引用的方法
用ASP编写更人性化的弹出窗口程序
谈谈学习ASP动态网页制作技术的编程心得
用ASP程序实现网站在线人数统计

ASP实用大全-实战ASP(1)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 62 ::
收藏到网摘: n/a

ASP计数器设计详解

      Active Server Pager(动态服务器主页,简称ASP),通过读写服务器的文件,结合script语言(VBscript或Jscript)和html码可以方便地实现页面计数器功能。现流行的ASP教材和网络上的ASP教程都谈到过ASP计数器的设计问题,但是都过于简单,比如没有提到怎样实现计数器脚本和主页面的分离以及图象计数器的实现等。下面就作者为单位制作NT web站点的经验,举实例循序渐进谈谈关于ASP计数器的设计,希望能给ASP的初学者和对ASP WEB编程有兴趣的网友一些启发。

              (一)简单的计数器
  ASP内含五个内置的"Active Server Components"(ActiveX服务器组件),即Database Access component(数据库访问组件)、File Access component(文件访问组件)、Ad Rotator component(广告轮播器组件)、Brower Capabilities component(浏览器信息组件)、Content Linking component(内容链接组件)。我们下面要设计的计数器,就是通过其中的File Access component(文件访问组件)来读写服务器文件来实现。算法思路是:在服务器端用一个文本(ASCII)文件存放计数数值,每当页面被访问时就从文件中读出数值,显示给用户,并且使数值加1,把增加后的数值写回到文件。

  写入数据到一个服务器计数文件的ASP语句和说明如下:
CounFile=Server.MapPath("用来存放计数器值的文件名")
  Server服务器访问方法MapPath(path)是将存放计数器值的文件所在的路径   转换成物理路径
SET FileObject=Server.CreateObject("Scripting.FileSystemObject")
  使用方法CreateObject定义对象FileSystemObject
SET OutStream=Server.CreateTextFile(FileObject,True,False)
  使用对象FileSystemObject提供方法CreateTextFile产生文本文件,其中参   数"True"表示覆盖原来的文件,"False"表示文件为ASCII类型
OutStream.WriteLine "要写入的数据"
  OutStream.WriteLine为往文件写入一行数据
  从一个服务器文件读取数据的ASP语法如下:
CounFile=Server.MapPath("用来存放计数器值的文件名")
SET FileObject=Server.CreateObject("Scripting.FileSystemObject")
SET InStream=Server.OpenTextFile(FileObject,1,false,false)
  使用对象FileSystemObject提供方法OpenTextFile产生文本文?
其中参数"True"表示覆盖原来的文件,"False"表示文件为ASCII类型
"要读取的数据"=InStream.ReadLine
其中InStream.ReadLine为从文件中读取的一行数据

  下面是一个用ASP实现页面计数器功能的计数器例子(simplecounter.asp),我在代码中详细注释了语句。你可以把以下代码粘贴到你需要计数的页面代码中。当然,你的服务器必须支持ASP,且你已经在主页所在的目录下创建了一个内容为0的文本文件simplecounter.txt。

简单的ASP计数器simplecounter.asp代码及注释:
$#@60;%
CountFile=Server.MapPath("simplecounter.txt")
文件aspconter.txt是用来储存数字的文本文件,初始内容一般是0
Set FileObject=Server.CreateObject("Scripting.FileSystemObject")
Set Out=FileObject.OpenTextFile(CountFile,1,FALSE,FALSE)
counter=Out.ReadLine
读取计数器文件中的值
Out.Close
关闭文件
SET FileObject=Server.CreateObject("Scripting.FileSystemObject")
Set Out=FileObject.CreateTextFile(CountFile,TRUE,FALSE)
Application.lock
方法Application.lock禁止别的用户更改计数器的值
counter= counter + 1
计数器的值增加1
Out.WriteLine(counter)
把新的计数器值写入文件
Application.unlock
使用方法Application.unlock后,允许别的用户更改计数器的值
Response.Write("您是第")
Response.Write("$#@60;font color=red$#@62;")
Response.Write(counter)
把计数器的值传送到浏览器,以红(red)色显示给用户
Response.Write("$#@60;/font$#@62;")
Response.Write("位访问者")
Out.Close
关闭文件
%$#@62;
             (二)与页面分离的计数器
  实际应用中,主页面与计数器程序是分离的,既只要在需要计数的页面中加入一句引用代码就可以实现页面计数。我们在网上经常申请使用的免费计数器就是这样,不过它们一般是CGI做的。这里,我们只要稍微修改一下前面我们用ASP做的简单计数器,然后在页面加入一句JavaScript语句引用它,就实现了与页面分离的计数器功能。这样,无论是作为主页面的计数器还是为某个特定页面的计数,都很方便了。显然,你需要简单更改一下存放计数器值的文件名和计数器asp源代码文件名就可以实现多