FlashMX数据库操作完全攻略-上部-第2卷

thornet 2003-07-14 11:07:19
第2卷 FlashMX数据库初级间接连接方法
原创: THOR (转载者请保留“作者:THOR”等字样,QQ 488915,Email coolthor@163.com)
声明: 对ActionScript和ASP不感兴趣者以及认为FLASH只能做动画片者,请Get OUT!
留言: 呵呵,本人初来乍到,希望大家多多支持,要是写了文章能加专家分就好了:)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
本卷将和大家讨论FlashMX通过ASP操作数据库的基本方法。好了,我们首先来了解一下,FLASH通过ASP操作数据库需要分哪些步骤来完成……

首先我们要先写好操作数据库的ASP脚本,然后再使用FLASHMX来读取ASP的运行结果(注意:这里仅仅只是需要ASP的运行结果而已,所以需要在ASP中去除一切无用的Html标记),我们先来掌握一下专为FlashMX提供数据的ASP的编写方法。ASP部分提供数据时应保证最后的运行结果应为:

变量名1=值1&变量名2=值2&变量名3=值3...

这样的话就相当于ASP部分为FlashMX中的变量进行赋值,当FlashMX中接收到数据之后便可以直接引用这些变量的值(注意:多个变量时,每个变量之间应用&号隔开!)
我们先以下面这段非常简单的程序为例:
文件名: Test.asp
<%="aspRect=Hello! Macromedia FlashMX 6.0"%>
或者写成:
<%
Response.write "aspRect=Hello! Macromedia FlashMX 6.0"
%>

这两种写法的功能是相同的,各位熟悉ASP的朋友看过这段代码后也许忍不住会问:“那不就相当于直接在页面中写aspRect=Hello! Macromedia FlashMX 6.0么?,呵呵,对,如果你直接在页面中写这句,FlashMX也是可以读到的,这也就是FlashMX读取文本文件的方法(呵呵,说到这里,我记得在CSDN的FLASH版块中曾经有这样一贴中,有人问Flash怎样获取到ASP中的变量值,有人回答将ASP的变量值写到文本文件,然后再来用FLASH读取文本文件,我看过之后,一时性急,来了句“脱裤放屁,多此一举”,虽然话可能听起来不怎么舒服,但确实是多此一举,因为FLASHMX直接就可以读到ASP了,干嘛还要用文本文件来一下呢?)

言归正传,我们现在已经完成了ASP部分的代码,然后我们再来准备编写FLASHMX部分的数据接收代码……
在FLASH中可以接收数据的语句有很多(在上一卷中已经提到过了),我们主要推荐两种,一个是LoadVariables语句,另一个是LoadVars对象,本卷将向大家讲解LoadVariables语句的使用。

LoadVariables语句由于在读取数据时没有回调功能,也就是无法产生数据接收完毕的事件,所以,我们需要建立一个循环来判断是否接收到了数据,我们以下面这代码为例
文件名: Test.fla
在FLASHMX的默认场景中创建4个关键帧,
第1个关键帧的代码如下:
loadVariables("test.asp",_root,"GET");
//Loadvariables的第1个参数为ASP文件名,也就是刚才我们写的那个
//Loadvariables的第2个参数为接收对象,也就是将在哪个对象中创建变量
//Loadvariables的第3个参数为"GET"或者"POST",在此语句中建议使用GET方法
第2个关键帧的代码为空
第3个关键帧的代码如下:
if(aspRect ne ""){
/*如果变量aspRect的值不为空,也就是已经接收到了数据则转向第4帧*/
gotoAndPlay(4);
}
else{
/*如果变量aspRect的值为空,也就是还没有接收到数据则转向第2帧*/
gotoAndPlay(2);
}
第4个关键帧的代码如下:
trace(aspRect); //显示变量aspRect的值
stop();

这样我们就可以在FLASHMX中获取到ASP中的数据,ASP的代码经过改进之后更可以完成比较复杂的应用。假设我们现在有一个Access 2000的数据库,其中有一个User的数据表,这个数据表中由以下字段和记录

记录\字段 id(主键) user(文本) sex(逻辑)
-----------------------------------------------------------------------------------------
1 thor true
2 csdn false


假设我们现在要在FLASH中通过指定ASP的参数来获取ID为1或者ID为2的记录中的USER字段值或者SEX字段值的话,我们可以这样来做:
ASP部分:文件名Test.asp
<%
dim conn,rs,db,connstr
db="数据库文件名"
Set conn = Server.CreateObject("ADODB.Connection")
Server.MapPath(db)
connstr="driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath(db)
conn.Open connstr '建立数据库连接

dim parID,strSQL,AspUser,AspSex
parID=Request.QueryString("ID") '获取ASP参数ID
strSQL="select top 1 * from user where id = " & parID
Set rs=Server.CreateObject("ADODB.RecordSet")
rs.open strSQL,conn,2,3
if rs.eof then
AspUser="无此记录"
AspSex="无此记录"
else
AspUser=rs("user")
AspSex=rs("sex")
end if
rs.close
conn.close
response.write "AspUser=" & AspUser & "&AspSex=" & AspSex
%>
FlashMX部分:
详细代码省略,大家对照上面的FLASH代码改改就行了,把第一帧的代码改为loadVariables("test.asp?id=1",_root,"GET");
然后把所有的aspRect改为AspUser或者AspSex,最后第4帧的代码改为
trace(AspUser);
trace(AspSex);


大家玩到这里的时候应该明白了FLASHMX的Loadvariables的用法了,熟悉ASP的朋友再稍稍变更一下ASP的代码就能完成功能稍稍复杂一点的应用了,不过Loadvariables由于没有回调功能以及相关功能上的限制,这条语句我已经很久没用了,在下一卷中将向大家介绍功能更强大的LoadVars的用法,相信大家在掌握了LoadVars之后也会跟我一样扔掉Loadvariables语句 ^_^
:::: [第2卷完] :::: [待续] ::::
...全文
122 34 打赏 收藏 举报
写回复
用AI写文章
34 条回复
切换为时间正序
请发表友善的回复…
发表回复
beggarofbeggar 2003-07-24
  • 打赏
  • 举报
回复
mark
fivestars070 2003-07-24
  • 打赏
  • 举报
回复
支持支持支持支持支持支持支持支持支持支持支持█████████支持支持
支持支持支持支持支持支持支持支持支持███████████████支持
支持支持支持支持支持支持支持无██████████████████支持
支持支持支持支持支持无████████████████支持支持支持支持
支持支持支持支持███████无███支持█████支持支持支持支持支
支持无████████████支持支持支持████支持支持支持支持支持
无██████████████支持支持支持████支持支持支持支持支持
无████████████支持支持支持无███████████支持支持
无████████████支持支持支持██████████████支持
支持██████████支持支持无██████支持无███████支持
支持支持支持支持████支持支持无████支持支持支持█████支持支
支持支持支持支持████支持支持████支持██支持无█████支持支
支持支持支持支持████支持支持████支持████无█████支持支
支持支持支持支持████支持支持████支持████无█████支持支
支持支持支持支持████支持支持████支持███支持█████支持支
支持支持支持支持████支持支持████支持███支持█████支持支
支持支持支持支持████支持支持████无████支持█████支持支
支持支持支持支持████支持支持████无████支持█████支持支
支持支持支持支持████支持支持████无████支持█████支持支
支持支持支持支持████支持支持████无████支持█████支持支
支持支持支持支持████支持支持███支持████支持█████支持支
支持██支持无█████支持支持███支持███支持无█████支持支
支持██████████支持支持无██支持██支持支持█████支持支
支持无█████████支持支持支持支持███支持支持无████支持支
支持支持无███████支持支持支持支持███无████支持支持支持支
支持支持支持██████支持支持支持无████支持█████支持支持支
支持支持支持支持无███支持支持支持█████支持无███████支持
支持支持支持支持支持支持支持支持██████支持支持无██████支持
支持支持支持支持支持支持支持无██████支持支持支持███████支
支持支持支持支持支持支持支持█████支持支持支持支持无██████支
支持支持支持支持支持支持无█████支持支持支持支持支持无████支持
支持支持支持支持支持支持███支持支持支持支持支持支持支持无███支持
thornet 2003-07-18
  • 打赏
  • 举报
回复
parID=Request.QueryString("ID") 中的ID是來自FLASH發來的GET參數
chenyu510 2003-07-18
  • 打赏
  • 举报
回复
我照着做了
果然高明!
up!
wchunge 2003-07-18
  • 打赏
  • 举报
回复
我按照您这个页面的文章做的,做一个flash,然后flash调用test.asp文件,但我一看ParID是从哪儿得到的,是不是通过另一asp页面提交查询参数给这个flash呢。

谢谢
thornet 2003-07-18
  • 打赏
  • 举报
回复
偶倒~`````不会吧,这个parID是ASP中的一个变量名,你看看ASP的相关教程就明白了
wchunge 2003-07-18
  • 打赏
  • 举报
回复
parID=Request.QueryString("ID") '获取ASP参数ID


这句代码为什么出错?从哪儿得到parID
whose 2003-07-17
  • 打赏
  • 举报
回复
几天没来, thornet(THOR) 兄弟整个个完全攻略,
帮你顶一下,
建议最好用一个帖,帖完全部攻略,免得一个个找,要不我开个收集帖。


up
uuncv 2003-07-17
  • 打赏
  • 举报
回复
up
gang75 2003-07-17
  • 打赏
  • 举报
回复
up
5097QQ 2003-07-17
  • 打赏
  • 举报
回复
up
geniuskf 2003-07-16
  • 打赏
  • 举报
回复
UP
thornet 2003-07-16
  • 打赏
  • 举报
回复
自己再顶!
geniuskfkf 2003-07-15
  • 打赏
  • 举报
回复
真的假的哦?
为什么我也是希望的那本
可是

<%="aspRect=Hello! Macromedia FlashMX 6.0"%>

aspRect这个变量没定义,希望上面的是用Dim定义了的(不知道是不是定义的意思)。不定义一样的用么?
引号里的东西不需要括号括起来的吗???希望的怎么括起来了?

最奇怪的是我怎么弄为什么都无法显示出Macromedia FlashMX 6.0????
PrecisionSoft 2003-07-15
  • 打赏
  • 举报
回复
真是好东西呀,简练!一看就懂了。比我看希望的fmx的网页编程宝典几个星期都强,净是dw写出来的垃圾代码,看起来晕死
geniuskfkf 2003-07-15
  • 打赏
  • 举报
回复
突然发现作者

<%
Response.write "aspRect=Hello! Macromedia FlashMX 6.0"
%>
<%="aspRect=Hello! Macromedia FlashMX 6.0"%>
这两句是吧“=”和“Response.write”替换了,只怪我自己看的不仔细

“aspRect=”这个是什么意思????是把那些语句赋值给变量aspRect?

我看了三遍才看明白了,跟书上的不一样,能不能示范如果多个变量怎么赋值?用一个语句~



geniuskfkf 2003-07-15
  • 打赏
  • 举报
回复
为什么不显示???
<%
Response.write "aspRect=Hello! Macromedia FlashMX 6.0"
%>
这个不能直接显示在叶子上的吗????
yanxiumei 2003-07-15
  • 打赏
  • 举报
回复
让你好看点.
我帮你UP啦
geniuskfkf 2003-07-15
  • 打赏
  • 举报
回复
<%
Response.write "aspRect=Hello! Macromedia FlashMX 6.0"
%>

我顺便补充下如果只有一句ASP
可以简写成
<%=
"aspRect=Hello! Macromedia FlashMX 6.0"
%>

即用“=”,代替“Response.write”

↑前天看书上面写的

谁还有什么技巧什么的写出来啊,让我学学

我顺便问下作者
<%="aspRect=Hello! Macromedia FlashMX 6.0"%>
这里最前面的一个等号跟aspRect=是配套的么???还是有什么特殊含义或者也是什么的简写?
我没学过ASP所以不知道,请问哪里有这种语句功能的字典下载???我也好自己翻~~~
或者告诉我怎么查也行
fivestars070 2003-07-15
  • 打赏
  • 举报
回复
踹一脚!
加载更多回复(14)
源码直接下载地址: https://pan.quark.cn/s/387d7c8f6289 在使用IE浏览器的过程中,偶尔会出现重置为默认配置操作未能顺利完成的现象。这种情况的发生可能源于多种因素,包括注册表项出现偏差、浏览器附加组件之间存在不兼容、操作系统授权设置不当或受到恶意程序影响等。针对这一挑战,我们可以通过一系列系统性的方法来逐一诊断和纠正。首先需要验证当前用户是否具备管理员级别的操作权限。在执行重置配置的操作时,必须确保IE浏览器是以管理员身份启动的。具体操作方式为,使用鼠标右键单击IE程序图标,并从弹出的菜单中选择“以管理员身份运行”这一选项。其次,应当检查是否存在恶意软件。恶意程序有时会非法修改浏览器的配置信息,从而阻碍重置过程的正常进行。用户可以借助Windows系统自带的Microsoft Safety Scanner进行检测,或者选择安装并使用第三方安全防护软件执行全面的系统扫描。紧接着,需要对浏览器的缓存数据以及Cookies文件进行清理。在IE浏览器界面中,通过访问“工具”菜单并选择“Internet选项”,然后在弹出的设置界面中,切换至“常规”标签页,并执行清除浏览历史记录的操作,此过程应包含Cookies和临时互联网文件。倘若上述步骤均未能解决问题,那么可以考虑禁用或移除那些可能引发冲突的浏览器附加组件。相关操作需要在“工具”菜单下找到并打开“管理加载项”,对可疑的插件进行禁用处理,并在浏览器重新启动后再次尝试执行重置操作。再者,修复IE浏览器相关的注册表配置也是至关重要的环节。注册表编辑器是一个功能强大的系统工具,任何不当的操作都可能导致严重的系统问题,因此在进行修改前必须创建系统还原点作为安全备份。用户可以通过按下“Win+R”组合...
内容概要:本文详细介绍了光伏储能虚拟同步发电机(VSG)并网仿真模型的Simulink实现方法,系统研究了光伏发电与储能系统融合VSG技术并入电网的动态特性与控制策略。通过构建完整的VSG控制模块,模拟其在并网过程中的虚拟惯性响应、频率调节能力和有功无功功率支撑特性,验证了该系统在增强电网稳定性、提升新能源并网适应性方面的有效性。模型全面涵盖光伏出力特性、储能系统充放电管理、VSG有功-无功解耦控制、下垂控制机制以及并网点动态响应等关键环节,并通过多种工况下的仿真分析,评估系统在不同运行条件下的动态性能与鲁棒性。; 适合人群:具备电力系统、新能源发电、自动控制等相关专业背景,熟悉Matlab/Simulink仿真环境,从事新能源并网、微电网控制或电力电子系统研究的科研人员、工程技术人员及研究生。; 使用场景及目标:①深入理解光伏储能系统如何通过VSG技术模拟同步发电机的惯性和阻尼特性以支持电网稳定;②掌握虚拟惯量控制、下垂控制等VSG核心控制策略在Simulink中的建模、参数设计与实现方法;③为新型电力系统中新能源并网的动态仿真、稳定性分析及控制策略优化提供可靠的模型基础和技术参考。; 阅读建议:建议结合所提供的仿真模型进行逐步操作与参数调试,重点关注VSG控制环路的结构设计、控制器参数整定及其对系统动态性能的影响,同时可将该模型拓展应用于多机并联、微电网孤岛/并网切换、多能源协同控制等更复杂的系统场景中进行进阶研究。

2,278

社区成员

发帖
与我相关
我的任务
社区描述
多媒体/设计/Flash/Silverlight 开发 Flash流媒体开发
社区管理员
  • Flash流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧