老康蓝屋 老康邮箱
·第1页·   下一页 
 

先看一个TXT为数据源的flash计数器

  本站曾经介绍过几款网页计数器,其中一个flash计数器是根据老版“蓝屋”的首页计数器讲解的,不少朋友看了教材后做了,但很少有人运行成功,究其原因是脚本略复杂,而且数字显示是利用了3D附加MC,运行时资源占用较大,一些软硬件因素使初学者不易掌握。
  本系统面向初学者,本辑将要介绍的计数器将是最基本和最简单的,任何初学者均可轻易掌握和使用。
  本辑将以最简洁的ASP脚本,介绍分别以TXTXML为数据源的flash计数器,大家会发现,在flash脚本不变的情况下,仅需对ASP关于数据源链接处理方法的改变,我们就可以拥有“TXT计数器”和“XML计数器”!在讲解中,我们以TXT文本计数器为主,较详细也解释相关组件的运用和原理,在这基础上,介绍一下ASP如何建立与XML文档的链接和处理。下面先看一下TXT计数器的范例:
 
  上面这个实例,是一个动态文本对象,在云雾翻腾的背景上,显示由flash 8“滤镜”效果的数字,这个数字信息取自ASP,而ASP是从TXT或者XML文件中读取及保存的。如果你需要在你的flash上添加计数器,你会发现这是如此地简单!

ASP对文本读写的基本原理

  如果你读过本系统的第五辑,你应该已经了解:ASP虽然没有自己的脚本语言,但它却包含功能强大的内置组件和对象,这里要用到的就是ASP内置组件之一:File Access组件,它的意思是“计算机文件系统的访问”。
  网络世界的“刀耕火种”时代,尚无数据库,那么在网络的“原始时代”的“交互数据”是靠什么保存的呢?就是TXT文本文件!大家一定看到过“CGI”文件,直到现在还用于不少地方,CGI实际上与ASP类似,它也是提供了一个“平台”,供用户选择某种语言编写应用程序,可以选择的是C、C++、Perl等,我试图找了个最简单的CGI程序琢磨一下,把我的头都看“大”了,状如天书!相比较,作为CGI的替代产品ASP实在是为我们初学者定身打造的啊!
  好了,咱们还是回到File Access组件(FSO),FSO组件的能力你可别小看哦,它含有相当丰富的属性和方法,可以使我们编制纯文本的TXT留言簿、聊天室甚至整个论坛系统哩!在本例中,我们仅仅利用FSO组件创建一个文本对象实例,再用VBScript脚本对其进行处理,实现ASP功能。下面我们就来“欣赏”一下本例ASP的脚本:

TXT计数器的ASP脚本

  下左就是本例的ASP脚本,你可以拷贝并粘贴进“记事本”,并“另存为”:count.asp,顺便再新建一个TXT文件,内容仅写一个“0”,或者写上“10000”,这是计数器初始数字,再保存为:count.txt。那么除了flash部分短短的几行脚本(下页阐述),你的计算器已经基本完成了。
  下面对ASP脚本作简略说明:
  Server是ASP提供的六个内置对象之一,我们在ASP脚本经常看到,它使我们可以访问服务器端ASP的方法和属性。比如脚本中第一句就是把数据源文件映射到服务器相应的物理目录上。第二句就是在服务器上创建一个FSO实例,实例名叫Fs
  在下面的脚本中,你会看到二次打开TXT文件,参数分别是“1”和“2”,前者是“只读”;而后者是“只写”,由此你可以轻易地理解脚本的意思:第一次打开把“老数字”+1,保存在NewValue(新值)变量中,而Cint()函数强制执行整数运算,我们的TXT中的数字实际上是“文本”,ASP虽然可以自动识别脚本动作,
  <%
SourceFile=Server.MapPath("count.txt")
Set Fs=Server.CreateObject("Scripting.FileSystemObject")
Set Counter=Fs.OpenTextFile(SourceFile,1)
OldValue=Counter.ReadLine
NewValue=Cint(OldValue)+1
Response.Write "load_txt="&NewValue
Counter.Close
Set Counter=Fs.OpenTextFile(SourceFile,2)
Counter.WriteLine(NewValue)
Counter.Close
%>
当我们进行数学运算时,它会很“知趣地”把信息当作数字,但作为一种良好习惯和保险起见,我们应该显式地进行数据类型转换。
  脚本挺简单,我基本看懂了,但有朋友要问了,创建实例时那个括弧中的“Scripting.FileSystemObject”是什么意思?这种关键词经常看到,比如在建立数据库连接时它是“ADODB.Connection”,本辑下边与XML连接时又变成“Microsoft.XMLDOM”。
  实际上这些语句是向服务器相关程序注册时的“关键词”,上例就是创建一个FSO对象实例。
  最后,有兴趣的朋友还可做个有趣的试验,当第二次打开时参数为“2”,你把参数改为“8”试试:  
Set Counter=Fs.OpenTextFile(SourceFile,8)
  你将发现,新值会另起一行保存!原来,参数“8”的意思是“数据追加到末尾”,这个试验的目的想引起你的兴趣,ASP内置对象的内涵是极其丰富的,从而激起你对ASP进行更深入的学习愿望。
  闲话少说,下面我们再看看ASP如何同XML信息源建立联系......
·第1页·   下一页