能不能在flash动画中给asp传递变量?

复制代码 代码如下:

  能不能在flash动画中给asp传递变量?

  faq-it.org/vb/---------------------------------------------------------------

  数据库结构:

  第一步要做的是建立数据库.例子中使用Access数据库,表名为tblStaff

  有三个字段:strID  (自动编号),  strKnownAs(Text),strSurname  (Text).

  这是一个用来示范用户名的数据库,随便加些数据把.

  第二步就是建立一个Flash  4的动画罗:

  步骤如下:

  1)建立三个text  field.它们是用来显示数据用的

  2)把第一个text  field的name设置为Input,它是用来接收输入数据的

  3)另外两个text  field分别命名为KnownAs和Surname

  4)其它设置先为默认

  5)最后,从Flash的library中选择增加一个按钮  (应该是一个可重用的组件ScrollBarButton  ).

  这是很重要的一步,按钮将把输入的变量传递给ASP页面

  到按钮的属性(Properties)上单击Action页.  单击"+"号和On  MouseEvent.勾上Release框.

  6)再次单击"+"号和Load/Unload  Movie.选择"Load  Variables  Into  Location"

  在URL输入框内输入你的ASP文件名(例如flash.asp).  选择Target.

  7)最后,选择Variables中的Send  using  POST.  单击"+"号来设置变量

  在Variable输入框内输入"Input"(就是第一个text  field的name)

  当上面的工作都完成后,你应该在action  box内看到如下内容:

  On  (Release)

  Load  Variables  ("flash.asp",  "",  vars=POST)

  Set  Variable:  "Input"  =  ""

  End  On

  这样当在动画过程中这个按钮被点击并释放后,Input输入框中的内容将被传递给flash.asp文件.

  注意form是使用的post方式传递变量的.

  8)现在建立一个HTML页面,在其中包含这个Flash动画文件

  第三步:ASP文件的代码

  <%

  Set  Connection  =  Server.CreateObject("ADODB.Connection")

  Set  Recordset  =  Server.CreateObject("ADODB.Recordset")

  Connection.Open  "people"  '你的数据库连接的DSN

  SQL  =  "SELECT  *  FROM  tblStaff  WHERE  strID="  &  Request.Form("Input")  &  ";"

  Recordset.Open  SQL,Connection,1,2

  If  Recordset.EOF  Then

  KnownAs  =  "Not"

  Surname  =  "Found"

  Else

  KnownAs  =  Recordset  ("strKnownAs")

  Surname  =  Recordset  ("strSurname")

  End  If

  Recordset.Close

  Connection.Close

  response.write("KnownAs="+Server.URLEncode(KnownAs))

  response.write("&Surname="+Server.URLEncode(Surname))

  %>

  需要注意的是在把KnownAs和Surname传递回去的写法,将是这样的

  KnownAs=Data1&Surname=Data2

  使用Server.URLEncode(VariableName)来保证传递过去变量的是按照  URL格式编码的

  下面简单介绍一下ASP和Flash通讯的原理:

  变量其实都是通过URL传递给Flash的,其实这是一种GET方法

  你不使用ASP其实也可以把变量传递给一个swf文件的,只要这样:

  <PARAM  NAME=movie  VALUE="myMovie.swf?myVariable=Text+of+my+variable">

  接着文本"Text  of  my  variable"将会出现在Flash的动画中指定的位置

  好了,该说的都说了,现在对于ASP的开发者来说,只要把Flash所需要的数据准备好,然后利用Flash中的动画

  功能就可以做出强劲的网页出来了.最简单的是利用flash结合数据库画一个很漂亮的饼图,呵呵.反正只要大家能够想象就可以做出

  很多很好的东西出来的.