标题在Flash中使用ASP
栏目网络与通信
发布2001年22期
Flash可以与ASP结合使用吗?经过反复实践,终于发现其中窍门,现特将成果共享,希望对Flash爱好者有所帮助。
一、在Flash中使用ASP需要的条件
1.你的ISP的Server必须支持Active Server Pages并且最好支持数据库;
2.你应该要安装Flash 4;
3.需要你对ASP有初步的了解;
OK,下文将具体介绍怎么使用。
二、数据库结构
1.建立数据库。
本例中使用Access数据库,表名为tblStaff,有三个字段:strID(自动编号),strKnownAs(Text),strSurname(Text)。
这是一个用来示范用户名的数据库,随便加些数据吧。
2.建立一个Flash 4的动画
1)建立三个text field,它们是用来显示数据用的;
2)把第一个text field的name设置为Input,它是用来接收输入数据的;
3)另外两个text field分别命名为KnownAs和Surname;
4)其它设置先为默认;
5)最后,从Flash的library中选择增加一个按钮,这是一个可重用的组件ScrollBarButton;
这是很重要的一步,按钮将把输入的变量传递给ASP页面到按钮的属性(Properties)上,单击Action页,单击“+”号和OnMouseEvent,勾上Release框;
6)再次单击“+”号和Load/Unload Movie,选择“Load Variables IntoLocation”;在URL输入框内输入你的ASP文件名(例如flash.asp),选择Target;
7)最后,选择Variables中的Send using POST。 单击“+”号来设置变量,在Variable输入框内输入“Input”(就是第一个text field的name)。
8)当上面的工作都完成后,你应该在Action box内看到如下内容:
On (Release)
Load Variables("flash.asp", "", vars=POST)
Set Variable: "Input" = ""
End On
这样,当在动画回放过程中这个按钮被点击并释放后,Input输入框中的内容将被传递给flash.asp文件。
注意form是使用的post方式传递变量的。
9)现在建立一个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结合数据库画一个很漂亮的饼图,呵呵。反正只要大家能够想象就可以做出很多很好的东西出来的。