| 网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 |
![]() |
| Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道 |
随着Flash的日益普及, Flash在WEB开发上面可是大显身手,既然是WEB-Site,那当然离不开基本的Html页面,以下是本人平时在制作Flash站点时候经常要用到的与Html方面的实用小技巧,不算多适合刚刚接触用Flash进行WEB开发的朋友,希望能够对大家有一定的帮助,本人算不上什么高手,错误之处还是难免的,请大家多多包涵,谢谢!
网管下载dl.bitscn.com
1.动态解析FlashWEB应用程序的HTTP服务器路径 中国网管论坛bbs.bitsCN.com
玩过Flash+ASP/PHP开发的朋友都知道,在Flash软件里测试Flash从后台脚本读取数据的时候,不能直接的用如“loaddata.asp”这样的路径,必须是http://www.domain.com/Application/loaddata.asp 或者 http: 开头的路径。有些人问了?为什么呢?
中国网管联盟bitsCN.com
当FlashPlayer里测试的时候收到load(\"loaddata.asp\")这个命令的时候,他会直接读swf文件路径下的 loaddata.asp文件。但由于没有经过IIS的运行处理,直接读入Flash内部,当然,读出的结果就是%@LANGUAGE=\"VBSCRIPT\" CODEPAGE=\"65001\"%类似这样了,所以就无法根据我们的意愿来处理数据了,而当FlashPlayer执行load(\"http://www.domain.com/Application/loaddata.asp\")这个命令的时候,他就不再是本地的TXT文件读取命令,而是一个HTTP请求,FlashPlayer把这个请求发送到HTTP服务器,服务器的IIS解析脚本返回结果后Flashplayer便可以正确的处理这些数据了。(废话一堆) 网管下载dl.bitscn.com
当然如果你清楚了路径的关系,也可以把写load(\"loaddata.asp\")写到Flash里,上传的时候,把.asp .swf 和包含 .swf的html文件,都放在一个目录里就行了。特别指出的是swf 在取得路径时,是取包含他的html和.asp的关系的。而不是 swf 与 asp的路径关系。 网管联盟bitsCN@com
说起来已经是有一点晕了,但如果理解了路径的关系,那就非常简单了。 网管联盟bitsCN_com
好了,进入正题,虽然输入HTTP路径就可以正确读取数据,但是在程序开发测试阶段可能经常需要开发者更换服务器,那样就对我们造成了一定的麻烦,你每更换到另外一个服务器上面的时候就要修改一次他的HTTP路径,如果读取了N(N≠0)个文件,难道还要手动修改N次?当然不是,那么通过下面这个小技巧便可以轻松解决这个问题: 网管联盟bitsCN_com
把SWF文件嵌入到一个ASP页面里面,输入如下代码:
<%
Dim PageUrl,URLarry,i,ApplicationURL
PageUrl=\"http://\" & Request.ServerVariables(\"http_host\") & Request.ServerVariables(\"url\")
Response.Write \"PageURL=\"&PageUrl
URLarry=Split(PageUrl,\"/\")
Arryubound=ubound(URLarry,1)-1
For i=0 to Arryubound
ApplicationURL=ApplicationURL&URLarry(i)&\"/\"
NEXT
Response.Write \"<br>ApplicationURL=\"&ApplicationURL '这一句仅仅是测试代码是否正确,可省
%>
网管联盟bitsCN_com
好了,对ASP有一定了解的朋友应该都明白代码是什么意思了,PHP也可以用这种思路来写,下面在SWF路径中可以这样写 <%=\"flash.swf?myserver=\"&ApplicationURL%> 这样就可以通过URL把变量传递给SWF文件,在Flash影片中便可以直接访问这个变量了,就是_root.myserver。 好的,现在来让我们测试一下结果,先编写一个loaddata.asp,让他返回一个back变量。 网管网www_bitscn_com
打开FLASH,新建一个文件。然后在场景中拖入两个动态文本框,分别命名为txt.url 然后在第一帧输入以下代码:
网管联盟bitsCN_com
网管网www_bitscn_com
mytxt=new LoadVars()
mytxt.load(_root.myserver+\"loaddata.asp\")
mytxt.onLoad=function(success){
if(success){
txt.text=this.Back
url.text=_root.myserver+\"loaddata.asp\"
}else{
txt.text=\"No File\"
url.text=_root.myserver+\"loaddata.asp\"
}
}
网管网www.bitscn.com
好了,Ctrl+Enter,发布影片,,然后把SWF文件嵌入之前的那个ASP页面,就可以看看效果了,分别在IE地址栏里面输入http://127.0.0.1/**** , http://localhost/***** , http://本机IP地址/**** 如果都能正确读取,那就说明已经OK了,呵呵,下面的慢慢玩吧!
网管联盟bitsCN_com
编辑语:如果在调试的时候,用绝对路径,那么在测试完毕上传前,改为相对路径会更方便整个目录在站点里的移动,也就可以不用上述复杂的方法了。
网管u家u.bitscn@com
|
0
|
评论加载中…