还剩9页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
转flash asp数据库版权声明转载时请以超链接形式标明文章原始出处和作者信息及本声明我们要制作基于ASP动态数据的flash作品时,必需了解Flash与ASP交换数据的原理,而ASP之所以能快速、高效、科学地组织数据依赖于数据库,虽然我们也曾接触过无数据库的ASP例子,但作为初学者也感觉到,这种靠文本文件管理信息的方式效率实在低下,而且功能十分有限,更谈不上安全性了!下面我们先探讨一下ASP与数据库的连接在我们读到的大部分ASP文档头部,总能看到一段似曾相同,却又相差甚远的脚本,这就是ASP与数据库连结的脚本,或许在此之前你对它们感到晕,那么,看完下面内容,我保证你不再会晕···有关数据库连结的基本知识请你挺着!或许这部分是本讲最让你乏味的,读懂了这部分内容,下面将水到渠成,一通百通哦.·两个重要对象Connection和Recordset其中,Connection是把数据库运用到web页面上来的最根本的手段,ASP脚本中对于数据库后续的种种操作,均依赖它,它是先决条件!我们打个比方,在Flash中,库中元件没放在舞台上等于零!同理,Connection等同于让库中的数据在我们的工作台上有了个实例,舞台中有了素材的实例,精彩的动画从此开始,这个比喻你不可能不懂吧OK,现在看看如何创建它,在Flash中,创建实例可以用鼠标从库中拖到舞台上,而在ASP中,创建数据库的实例可以用采用一句服务器对象语句Create,它可能是这样的set Con=Server.CreateObjectADOBE.Connection其中,Con是实例名,在ASP中,为实例名指定值一定要用set,OK,除了那个ADOBE,全懂了!好,那么我们简述一下ADOBE有个技术名字叫OLEDB,它可以使用户访问任何数据源,但它是系统级的编程接口,非专业程序员难以问鼎,再打个比喻,它好比是C语言,功能强大却又是阳春白雪!还好,总会有适合下篱巴人的东东,那就是上面看到的ADOBE!也就是我们常看到的ADOADO也是一组接口,但它是应用程序级的,我们无需深究它的接口原理,只需按照上例用上去,Con实例就有了!但光有个数据实例事情没完啊,Connection其实是空的,它好比是flash中的MC,功能强大但还没内容,还得有一个存放数据集的盒子,这就是Recordset它是属于ADO的一个对象Recordset好比是一个具有横、竖格子的容器,用句行话说是一个二维数组,分别存放数据库中的数据结构与内容创建Recordset也容易,如下所示set rs=Server.CreateObjectADODB.RecordSet这下不用再解释了吧!rs就是存放数据库结构及内容的盒子哦请你再坚持一下哦,接下去的内容可以稍微有点烦,但跨过这道坎可是一马平川啊.两个对象有了,我们还得依一定方式打开它们,两个对象都有一个open方法,关于open的具体脚本,暂不展示,免得你一晕不想看下去了,咱先谈谈相关的几个问题有一个服务器对象,叫MapPath,它将相对路径或虚拟路径映射为服务器物理路径,比如,它可以把诸如C\Inetpub\wwwroot\db\hslk.mdb或者等虚拟路径映射为db/hslk.mdb的服务器路径还有一个放之四海而皆准的数据库操作语言SQL,它的功能盖世无双,语句清晰,语法如同说话,比如select*from hslkwhere name=lk它的意思就是从from数据库表hslk那里选择select所有字段*中条件为name=lk的内容!呵呵,好象没什么难度,是吧那么,再坚持下,咱们这就说最后一个问题连结数据源的两种方式上面把这个问题暂时挂起,两个对象还有个open问题,而Connection对象的open有两种方式一种是采用设置数据源DSN的方法,我们上一辑已经讲过,通过windows系统的ODBC设置一个DSN源,如果你为这个数据源起了个myAccess的名字,那么你就可以用如下脚本完成Connection的open%Set Con=Server.CreateObjectADODB.ConnectionCon.OpenDSN=myAccess%还有一种就是无DSN连接,如果你不想进行上述的ODBC操作,那么可以手写open语句,就必需加上Driver和DBQ两个参数,前者指定微软的数据库驱动程序;后者指定数据库路径,如/font%/font SetCon=Server.CreateObjectADODB.Connection/font Con.OpenDriver={Microsoft AccessDriver*.mdb};DBQ=myAccess/font%那么,至于Recordset对象的open如何呢呵呵,一般地就是用SQL语句喽!OK,现在我们已经具备充分的阅读能力,下面我们看看一例较完整的脚本!翻页继续,咱们现在不会再晕喽.···一个数据库连结脚本剖析下面是一个Flash留言簿的添加新纪录程序模块,你千万别被它的脚本书写手法而迷惑,需要再点拨一下的是ConStr是先行定义的Connection对象open的语句,第三行的con.Open Constr就是对这个语句的运用,现在我们知道了,这是无DSN方式的应用,rs就是Recordset数据盒子实例名,它的参数3,3是数据盒子打开的安全模式,包括权限、读写属性等,可以参看语言手册,属性内容较复杂addnew是内建方法,它使rs新增一条记录,后面几句分别从Flash界面中的输入文本中获取用户名、邮箱、icq号、头像、主页、留言主题及留言内容等信息trim函数是去除用户输入的文字两傍空格,呵呵,这是个不错的防范措施哦,接着,rs更新数据Update,最后整个con对象关闭,并释放资源nothing,最后,发送给flash一个信号SendFlag=1,flash根据这个信号将决定播放指针跳到哪个关键帧%ConStr=Driver=Microsoft AccessDriver*.mdb;dbq=Server.MapPathDb/hslk.mdbset con=Server.CreateObjectADODB.Connectioncon.Open constrSet rs=Server.CreateObjectADODB.RecordSetrs.Openselect*from guestbookwhere1=0,con,3,3rs.addnew rsUserName=trimrequestUserNamersemail=requestemailr sicq=requesticqrsface=requestcurFacersurl=request inurlrsmessage=trimrequestfTextrssubject=trimreque stsubjectrs.update rs.close setrs=nothing con.close set con=nothing Response.WritesendFlag=1%再说一遍,脚本书写习惯因人而异,ASP对象、方法运用技巧各显神通,但基本脉络把握了,读程序也就不会迷失方向,在这段脚本中,还有二个极其重要方法,那就是Request及Response在上一次第一辑交流中,已经就两个方法作了介绍,它是ASP与flash通讯的唯一途径!再说明一下,就我们现在所知,Request及Response前者是接受,后者是发送,在实际应用中内涵相当丰富,本文仅以flash与ASP之间的传递信息范围作探讨在探讨之前,我认为很有必要再补充一些ASP与数据库操作方面的常见问题这些问题虽然在上例中未见到,却会经常出现在一些ASP文档中.···一些数据处理的情况或许,你在某些ASP中,还看到如setcon=server.createobjectadodb.connectioncon.Mode=2这样的脚本,这是connection的属性Mode=2意思是允许只写权限还有,Recordset的常见方法还有Open激活数据、Close关闭、Move移动指针、Update修改数据、Addnew增加数据、Delete删除数据、Resync与服务器数据同步更新的模式等等常见Recordset方法还有Lock,把数据锁闭,不让其他用户同时存取,以上这些方法从字面上就能知道其功能,想必不会过大地为难你吧!另外,我们最常看到的还有数据库指针操作方法Bof数据库记录头部、Eof尾部,它们的运用一般是这样的if notrs.EOF andrs.BOFthen.end if但下面这个情况,很可能让你怀疑笔者前面说的内容con.executesql它是connection对象的一个方法Execute方法通常运行一个SQL命令,从而直接产生Recordset对象,在这种情况下,你将只读到connection对象的建立,却再也找不到数据盒子喽,数据操作运用的脚本特例还有很多,再列举下去恐怕又得让我们晕乎起来,咱们还是看看与flash交互的两个方法···Request及Response相对而言,ASP接受flash的数据比较容易理解,如上例rsemail=requestemail这一句,意思是数据盒子rs中的email字段的值=flash中动态文本变量email的值你看到的ASP与flash结合的范例大致全用这种脚本形式那么,Response方法就不那么容易了,记得我曾写过的flash从外部文本文件接受变量值中提到过flash接受的变量值一定得符合MIME标准,比如这里包含3对变量myvar1=hslkmyvar2=count+3myvar3=各对变量用连结Response向flash传递信息时一定得符合这个格式再有%Resopnse.Write你好,老康!%等同于%=你好,老康!%后者是你常见到的书写形式!另外,你肯定常见到浏览器地址栏中出现如http%3A%2F%2Fwww%2Ehslk%2Ecom的字符串!其实它是咱老康蓝屋的域名啊!这可真正的URL编码格式URLEncode,它是由如下脚本产生的%Response.writeserver.URLEncode%与此类似的还有HTMLEncode方法,这个在ASP程序中会经常遇到,如Server.HTMLEncodestring就是使string不支持HTML语法编码,我们常遇到留言板支持,或者不支持html语法就可以用此方法设定用ASP向flash发送信息时还大量使用html标识哩,我们知道,服务器在处理ASP文档时,会极其忠实地对待html标识!不管html语句出现在哪里,就是在ASP定界符%%内照样按html处理!只有用HTMLEncode才能改变服务器的顽固脾气哦!比如,以下脚本%Response.WriteH3ALIGN=CENTER沪上老康向坛友问好!/H3%将会以3号大字在浏览器中间显示沪上老康向坛友问好!如果把这个方法用上去,如写成如下%Response.Writeserver.HTMLEncodeH3ALIGN=CENTER沪上老康向坛友问好!/H3%那么,浏览器将把html标签及文字如实在还原出来了,以上脚本朋友们可一试,以加深理解事实上,在ASP中向flash发送信息时,我们常看到在信息中混用html标签,比如,br就很方便地使flash中的文本换行了,但是有一条得注意,在flash中必需把动态文本对象的html属性设置为可用,记得上次我写过flash文本与html格式一文,有朋友说这个有什么用呢现在明白了flash中的动态文本对象与ASP结合后,其实就是网页中文本域,其运用价值方兴未艾哦.那么,怎样向flash传递多个字段的信息呢从上述原理可知,把各个变量相连结,或者连续发送如Response.Write rsmymailResponse.Write rsmyurl.OK,说了半天的ASP接受、发送,传递总是双方面的,那么在flash中是如何从ASP中接受或向ASP发送数据的呢当然,下面就来说这个事情了,翻过去哦.···Flash中的函数loadVariables概述这个担当起ASP与flash数据交换任务的函数完整语法如下loadVariablesurl,level/target[,variables]我们从Flash帮助中读到以下信息其中url是变量所处位置的绝对或相对URLlevel指定接收这些变量的级别的整数当将变量加载到级别时,在标准模式下,动作面板中的该动作变成loadVariablesNum,在专家模式下,您必须指定loadVariablesNum或从动作工具箱中选择它笔者按对于loadVariables和loadVariablesNum至今分不清楚的朋友请注意上述描述,实际上使用效果是一样的!target指向接收所加载变量的影片剪辑的目标路径您只能指定target影片剪辑或level级别这两者之一;而不能同时指定这两者variables是一个可选参数,指定发送变量所使用的HTTP方法该参数必须是字符串GET或POST如果没有要发送的变量,则省略此参数GET方法将变量追加到URL的末尾,该方法用于发送少量变量POST方法在单独的HTTP标头中发送变量,该方法用于发送长的变量字符串我们还看到如下说明该函数从外部文件例如文本文件,或由CGI脚本、ASP、PHP或Perl脚本生成的文本读取数据,并设置Flash Player级别或目标影片剪辑中变量的值此动作还可用于使用新值更新活动影片中的变量请你特别注意这一段描述,与我前面提到的一样在指定URL处的文本必须为标准的MIME格式application/x-www-form-urlencoded一种CGI脚本使用的标准格式可以指定任意数量的变量例如,下面的语句定义了几个变量company=Macromediaaddress=600+Townsendcity=San+Franciscozip=94103好了,或许你对帮助系统向我们描述的结果似懂非懂,不要紧的,现在你只要知道,Flash与ASP通讯就靠loadVariables,而且它远比ASP部分简单!现在让我们进行一次最基本的ASP与flssh通信···一次最简单的通信我们先在记事本中写下如下脚本%Re=mytext=朋友你好!Response.WriteRe%保存为hslk.asp,然后在flash中创建一个按钮,其AS指令是onrelease{loadVariableshslk.asp,,GET;}再在舞台上创建一个变量名为mytext动态文本框运行后,该文本将接受从ASP发过来的信息这是一个最简单最基本的通信根据我的体会,以下几条供你参考·无论是从ASP接受或者发送信息,全都用loadVariables;·在flash中一定要有与ASP中相同变量名的文本框存在;·一般,与ASP的通信在主场景进行,也就是level0,所以,我们暂时不必理会后面的层参数,也无需纠缠于另一个同样的指令loadVariablesNum之间的差别,在比较复杂的论坛、留言簿动画中,level级别运用很多,这一点你必需知道其所以然;·考虑到该指令有效范围它要求传递数据时处于同一子域,即同一网站,最好同一目录,不懂也没关系,按照我的经验,文件名前加绝对路径总能成功,比如上例可写成loadVariables·上面的flash帮助说得还不全,loadVariables还能与XML文档结合,如loadVariableshslk.xml,,这方面的运用例子见·loadVariablesASP数据进flash时,它与动画播放指针是异步的,比如ASP传递的是count=Ccount,而flash中的变量count真正得到Ccount要有一个过程,它滞后于播放指针,所以在做这方面练习时一定得加个循环判断,下面有例子OK,翻页继续后面内容.Flash爱好者都有这样的体会flash对于web页面装饰能力是无与伦比的,更兼flash强大的编程功能及矢量动画特性,已经成为web设计的主力!而ASP无所不能的动态数据处理能力及良好的兼容性已经成为动态网站坚固的后台!这两者一旦强强联手,嘻嘻,后果不堪设想啊!上面说的loadVariables似乎懂了,下面我们进一步看看loadVariables是怎样工作的.其实,Flash和Asp交换信息的原理和纯ASP文件之间交互的原理是一样的,换言之,就是页面之间的数据交换Flash与Asp的通讯也是使用Http协议,其请求格式为地址变量1=值1变量2=值2变量3=值3,也就是说,当我们的flssh中有三个动态文本对象,它们的变量名分别是hslk
1、hslk
2、hslk3,当你想与hslk.asp交换信息时可以写成loadVariableshslk.asp,,get,当变量输入值并提交后,实际上flash发出了如下的web请求喔,原来我们做Flash与Asp之间的交互时,其实就是在构造上面的请求字符串是的,这就是其工作实质!那么,上例中的情况可以写成loadVariableshslk.asp,,get也可以这样写loadVariables,0,GET这就是一个完整的请求,前者是一般写法,后者是显式的web请求反之,在Asp中,要取得从Flash端传送过来的参数,跟普通的HTML表单是一样的都是利用Request对象,其语句为hslk1=Requesthslk1hslk2=Requesthslk2hslk3=Requesthslk3那么,根据上例,在ASP中,得到的参数值分别是hslk1=hslk;hslk2=123;hslk3=ABC接着,你可以在Asp中利用ASP各种方法对参数处理,再向flash传递处理后的变量值Response.Writehslk1=xxxhslk2s=yyyhslk3=wwwOK,相信你现在明白了不少,实例永远是巩固认识的最佳渠道,下面就提供一个flash计数器,或许你急着要源文件,不必!因为所有源代码将在讲解中全部呈现,一个字符也不拉下!这个计数器的运用可参见···一起动手制作Flash计数器-1在网络上得到过不少ASP原代码,其中不乏计数器,但是,flash计数器代码一个也没看到过,现在,我们就自己建造一个计算器数字资料当然可以放到数据库中去,但计数器仅一个数字,用上数据库似乎太奢侈哦咱们还是节约些,第一步请你打开记事本,输入一个数字1,保存为counter.txt,这一步算完成了如果现在用flash直接读入counter.txt数据是不是可以当然行,但这个数字是死的,没有实际意义,更主要的,它的格式不符合规定,为什么这个问题留待你思考哦答案前面早已说过.接下来,我们编写ASP程序,因为这次我们使用的是文本文件,你看到的ASP脚本将比数据库脚本更简洁明了,而且这段代码通用性极强,请你在理解的基础上,发挥其更大的作用哦,下面是这个计数器的ASP完整脚本%Dim countSet Fs=Server.CreateObjectScripting.FileSystemObject创建一个新文本文件对象file_path=Server.MapPath./counter.txt设置一个文件打开字符串Set CounterFile=Fs.OpenTextFilefile_path用上面的客串为属性打开这个实例OldCountervalue=/blog/CounterFile.ReadLine定义老计数值NewCounterValue=OldCounterValue+1新计数值为老数值+1Response.Writecount=NewCounterValue发WEB页面发送新值CounterFile.Close关闭文本文件Set CounterFile=Fs.OpenTextFilefile_path,2再次打开文本文件,参数2为复盖原文件CounterFile.WriteLineNewCounterValue用新值更新计数值CounterFile.Close更新后复盖存盘%怎么样,虽然脚本用了新的文件操作对象,但有了上面积累的知识,能读通个十之
六、七吧脚本中使用了一组ASP的文件操作组件,其中可能对你陌生的方法有以下几条MyFile.CreateTextFile新文件.txt创建一个新文件MyFile.OpenTextFile文本文件.txt打开一个文本文件MyTextFile.ReadLine读取文本文件中的某一行MyTextFile.WriteLinestring向文件中写入字符串并加入换行符现在,你可以把以上代码保存为fcount.aspOK,我们现在有了保存计数值的文本文件,处理计数值的ASP脚本,接下来就是Flash部分了,···一起动手制作Flash计数器-2当你准备开始计数器的Flash部分时,你只需记得二点,我们的ASP文件是fcount.asp,以及该文档发出的信息是count=NewCounterValue然后,你就可以在场景的第一帧写下以下AS指令loadVariablesNumfcount.asp,0,GET;就可以了当然,你还得在场景就创建一个接受数据的动态文本对象,它的变量名一定是count从道理上说,这个计数器已经完成了!似乎太简单了些,测试一下,咦.没有任何结果!喔,知道问题出哪儿了,从ASP接受到count值时,flash的播放早已结束,文本变量count根本来不及接受到数据!那么,让我们再做一个判断过程,把动态文本对象移到第9帧,在第8帧处加入以下脚本ifcount eq{gotoAndPlay2;}else{gotoAndStop9;}该段脚本将成功地指定播放指针耐心等待ASP变量确实被count接受后,才转到计数器显示画面第9帧当然,这个判断具体放在哪个关键帧无所谓,只要有个循环等待即可然后你再测试一下.OK,成功啦!刷新一下swf文件,数字确实在增加!最初的兴奋没维持多久,你又沮丧了这就什么计数器呀,人家的计数器是固定数字位数,哪怕浏览数为1,也会显示000001,而且这个数字固定在左上角,不能随意布放位置,flash计数器的视觉优势一点也没体现!你想得完全有道理,下面我们就来解决这3项难题正如我们现在看到的,现代的ASP+Flash作品大量应用了元件捆绑技巧attachMovie,以及用代码创建实体的手段createEmptyMovieClip下面就用createEmptyMovieClip在舞台上建立一个计数器的参照物作用是指定位置然后用attachMovie把库中的数字MC捆绑到该参照物上面,同时,再用两段条件循环解决0及数字以固定位数显示问题首先,请把第9帧原来的动态文本count删除,然后请你在场景中写入从0至910个数字请注意选择你喜欢的字体,你也可以导入特殊效果的数字矢量图形打散,并分别转换为MC元件,建议0的名字为z0;1的名字为z
1.以此类推.完成后删除场景中的所有数字MC这时,你的元件库中存在10个MC,请选中其中之一,比如0,调出右键菜单,单击链接,调出链接属性对话框,作如下图那样的设置其它9个数字MC同样处理,不过它们的标识符一定是z
1、z
2、z
3.z9哦!最后,在第9帧的帧代码中输入如下脚本建议你在阅读脚本时假设一下浏览数,比如当前计数值是123,可以更有效地理解程序喔,如果你要copy代码,请先把左边的注释删除哦!g=stringcount;//格式化从ASP得到的数据,转为字符型数据c=lengthg;//把当前计数器数值的位数储存在变量C中long=6;//设置计数器显示总位数createEmptyMovieClipcountor,0;//创建计数器在舞台上的参照物countor countor._x=30;countor._y=18;//这两句可以精确设定countor在界面上的位置ifc=long{//这是个总的运行条件,就是数字不超过6位数,显然这个条件不用也行j=long-c;//应该有多少个0,比如数字是123,那么J应该是3forvar i=0;i j;i++{//条件循环,如果J是3,那么就从库中3次向舞台显示z0MC countor.attachMoviez0,f+i,i;//注意countor就是位置参照物var theF=evalcountor.f+i;//theF得到的是每个新MC的实例名theF._x=i*24;//每个新MC的横向间隔距离dx=theF._x+24;//这个dx记录的位置为下一个数字显示作准备}forvar i=0;i c;i++{//以C数字位数为条件进行循环cchr=g.charAti;//强烈建议从帮助中了解charAT函数的意义依次从数字字符中读出每个字符countor.attachMoviez+cchr,n+i,i+6;//根据读出具体数字字符从库中附加相应数字MC,关键啊!var thev=evalcountor.n+i;//取得每个新数字对象的实例名thev._x=i*24+dx;//按一定间隔横向显示,注意dx是上面记录的最后一个0的位置}}stop;请再测试一下,现在所有的要求全实现了!进一步,你可以创作各个数字MC的动画效果,你甚至可以把各个数字对象做成极其眩目的小动画,以充分体现flash计数器的出众效果!届时,可别忘了咱老康,让我也欣赏一下哦!最后,让我们再验证一下前页说的flash向WEB请求任务时的实际形式,请把计算器第一帧改成如下指令loadVariablesNumfcount.aspcount=NewCounterValue,0,GET;OK,也成功了!实际上我的计数器也正是如此写的哦!下面一页,你将看到笔者关于如何解读ASP+Flash作品的经验.···当前ASP+Flash作品的制作技巧·attachMovie和createEmptyMovieClip技术一般来说,这一类的作品程序规模均较大,你是否觉察到越是复杂的作品,其flash的场景越是简单!甚至主场景上竟然空无一物!我们想象一下,诸如留言簿、论坛等flash作品不仅其数据瞬间万变,而且用户界面也随时变换,与此同时,还得表演出变得过程中的动画效果,flash动画过去那种相对固定的舞台元素或者用场景分隔的做法远远不能适应这种流程,所以,此类作品无一例外地采用动画编程的手段,不同的用户进程用程序构造不同的界面元素和位置乃至效果attachMovie可以方便地随时从元件库中把任何元素请进界面,而创建createEmptyMovieClip虚拟对象,用程序语言赋予它你所需要的任何属性,这种灵活的编程手段更好地适应了较复杂的用户界面另外,这种模式的作品其程序模块特别多,子程序互相调用频繁,逻辑关系特别复杂严密!但同时,却为我们阅读理解作品带来了很大的难度!探索这样的动画流程确实不易,但是讲究一点技巧,还是能渐渐理清基本脉络的,比如,对于一个留言簿,你可以先搞清楚相关的ASP脚本是如何写的,它从flash中获取了什么数据,返回了什么信息,然后在flash库中找出相应MC,注意其链接标识名上面实例已有简单运用,再打开这MC的编辑界面,往往你能看到一个完整的用户界面,而且在这些MC中,你能读到大量的关键代码在初步理清一个模块的基础上,再努力找出其与其它模块的逻辑关系,顺藤摸瓜、步步为营、渐入佳境.·脚本文件AS我曾看到过一个作品,在flash中根本发现不了任何AS脚本,却拥有近10个外部AS文件,这就是脚本文件,它的扩展名就是as,比如hslk.as然而,在flash中,你却会发现这样的指令#i ncludehslk.as,这就是对于脚本文件的运用由于上面第一条所说的技术,作品本身的动画舞台中没有任何实际的对象,动画界面均出于自己胸有成竹的编程过程,所以作者根本无需在flash环境下工作,因而尽可在某个文本编辑软件中尽情书写动画流程,我实在佩服这些作者,除了对动画结构了然于胸,还有那缜密思维、逻辑结构仿佛行云如水,天马行空,豪爽至极!碰到这样的情况,你可以不必再在flash中苦苦搜索,从一个MC折腾到另一个MC,点击每一个真有a的关键帧,你可以集中精力,解读这一个个相对独立的脚本文件但这需要你对flash元件库中的MC元件有较充分的了解,因为脚本中无时不刻地在引用这些实例名、变量.你完全可以把AS脚本看作为实实在在地存在于flash中,事实上,Flash经过编译产生swf文件时,也确实把所有as脚本包含进播放文件中了!所以,根本用不到把AS文件随同swf一起上传到远端服务器上·工作图层你有没有看到过如右图那样的图层那些有一把小铁锤的层是什么意思呢告诉你,这是一个很有用的编辑界面技巧哩!如果你把一个层属性设置为引导层,而且不为它增加被引导层,那么会出现这个小铁锤标志,我把它称作为工作层工作层可以写上编辑日志、编辑注释等内容,更可以放一些供编辑参照的对象,因为,工作层只在编辑环境下显示,它仅保留到fla文件中,在编译成swf文件时被忽略!而在相当多的ASP+Flash的源文件中,往往利用工作层放一些参照MC对象,这些对象本来不在场景中出现,仅用作编辑时参考,如位置等信息从图中可以看出,工作层的作用挺大哦!·形形式式的包含文件在flash中,除了loadVariables函数传递ASP数据,用#i nclude引进脚本文件,我们有时还会看到一些另类调用方法,如_global.read_url=read.asp;_global.add_url=add.asp;_global.delete_url=delete.asp;_global.edit_url=edit.asp;_global.login_url=login.asp;_global.reply_url=reply.asp;这是利用ASP参数设置flash中的一系列全局变量再有,不少ASP文档把常用的一些脚本单独放在某一文档中,最多的是一些环境设置及数据库连接语句,如下面是连结数据库的的脚本,这段脚本可能会在多个ASP文档中引用,我们把它保存为conn.asp文件%set conn=server.createobjectADODB.CONNECTIONdbpath=server.mappathhs lk.mdbconn.opendriver={microsoft accessdriver*.mdb};dbq=dbpath%然后,只要在需要引用数据库连接的ASP头部添加以下语句就行了!--#i ncludefile=conn.asp--这种手法常遇到,但在DW中,往往会把html界面隐藏掉,对我们的页面编辑带来不便,这时,你可以暂时移去这段语句,待编辑完成再恢复特别声明1资料来源于互联网,版权归属原作者2资料内容属于网络意见,与本账号立场无关3如有侵权,请告知,立即删除。