Flash和Asp数据库的结合应用
在看这个例子之前,先讲讲Flash和Asp结合的原理,其实懂一点ASP的朋友都知道ASP是基于HTML的.
其实Flash和Asp接口的原理和纯ASP文件之间交互的原理是一样的,简单地说就是页面之间的数据交换。了解了这一点之后,我们来看看下面这个简单的例子:
这个例子是把ACCESS内的数据读出来,并在Flash内显示出来。这个例子一共有三个主要文件,一个是ACCESS的数据库文件employees.mdb,它有一个employees表,有四个字段:ID,Namelast,Lastname,Position。
现在我们就来看看这个例子的制作过程吧。第一个影帧,ACTION是stop,有一个供用户输入查询字段的文本框:strSearch,一个按钮:submit,它的ACTION是
于 (放开)
跳至并播放 (2)
退出于
第二个影帧的ACTION是:载入参数 ("employee.asp", 0, vars=GET)
这个ACTION的作用是通过ASP文件把ACCESS数据库内符合用户查询条件的数据读出来。
第三个影帧的ACTION是:
如果(NameFirst ne "")
跳至并停止 (9)
退出如果
意思是如果NameFirst不等于空值的话,就跳到第九个影帧;否则将会执行下去(即播放下一个影帧)。
第4-7个影帧都没有ACTION哦。
第八个影帧的ACTION是:
跳至并播放 (3)
回过头来再看看第三个影帧看看,呵呵,懂了吧?
如果没有符合的数据的话,就一直读到有为止;读到了就跳到第九个影帧哦。
那么再来看看第九个影帧:
一共有三个文本框:NameFirst,NameLast,Position
数据库内符合查询条件的数据将会显示在他们之中哦!
还有一个按钮:Do It Again
它的ACTION是:
于 (放开)
跳至并停止 (1)
退出于
好了,再来看看employee.asp这个文件吧:
Dim oRS, oConn '定义两个变量
Set oRS = Server.CreateObject("ADODB.Recordset") '定义oRS为RECORDSET对象
Set oConn = Server.CreateObject("ADODB.Connection") '定义oConn为CONNECTION对象
oConn.ConnectionString = "Driver={Microsoft Access Driver (*.mdb)};
DBQ=" & Server.MapPath("employees.mdb")
oRS.Open "SELECT * FROM Employees", oConn, 2, 3
'嘿嘿,这两句不用说了吧?打开数据库哦
oRS.Find "NameLast = '" & UCase(Request.QueryString("strSearch")) & "'"
'找到符合条件的数据
If oRS.EOF Then '如果数据指针已到底
Response.Write "NameLast=Not+Found&NameFirst=Not+Found&Position=Not+Found"
' 呵呵,那么NameLast就是没有找到符合条件的数据咯
Else
Response.Write "NameFirst="
& Server.URLEncode(oRS("NameFirst"))
& "&NameLast=" & Server.URLEncode(oRS("NameLast"))
& "&Position=" & Server.URLEncode(oRS("Position"))
'找到的话就是找到咯(废话嘛。。。)
End If
oRS.Close
Set oRS = Nothing
oConn.Close
Set oConn = Nothing '关闭并清空数据库对象
其实Flash和Asp接口的原理和纯ASP文件之间交互的原理是一样的,简单地说就是页面之间的数据交换。了解了这一点之后,我们来看看下面这个简单的例子:
这个例子是把ACCESS内的数据读出来,并在Flash内显示出来。这个例子一共有三个主要文件,一个是ACCESS的数据库文件employees.mdb,它有一个employees表,有四个字段:ID,Namelast,Lastname,Position。
现在我们就来看看这个例子的制作过程吧。第一个影帧,ACTION是stop,有一个供用户输入查询字段的文本框:strSearch,一个按钮:submit,它的ACTION是
于 (放开)
跳至并播放 (2)
退出于
第二个影帧的ACTION是:载入参数 ("employee.asp", 0, vars=GET)
这个ACTION的作用是通过ASP文件把ACCESS数据库内符合用户查询条件的数据读出来。
第三个影帧的ACTION是:
如果(NameFirst ne "")
跳至并停止 (9)
退出如果
意思是如果NameFirst不等于空值的话,就跳到第九个影帧;否则将会执行下去(即播放下一个影帧)。
第4-7个影帧都没有ACTION哦。
第八个影帧的ACTION是:
跳至并播放 (3)
回过头来再看看第三个影帧看看,呵呵,懂了吧?
如果没有符合的数据的话,就一直读到有为止;读到了就跳到第九个影帧哦。
那么再来看看第九个影帧:
一共有三个文本框:NameFirst,NameLast,Position
数据库内符合查询条件的数据将会显示在他们之中哦!
还有一个按钮:Do It Again
它的ACTION是:
于 (放开)
跳至并停止 (1)
退出于
好了,再来看看employee.asp这个文件吧:
Dim oRS, oConn '定义两个变量
Set oRS = Server.CreateObject("ADODB.Recordset") '定义oRS为RECORDSET对象
Set oConn = Server.CreateObject("ADODB.Connection") '定义oConn为CONNECTION对象
oConn.ConnectionString = "Driver={Microsoft Access Driver (*.mdb)};
DBQ=" & Server.MapPath("employees.mdb")
oRS.Open "SELECT * FROM Employees", oConn, 2, 3
'嘿嘿,这两句不用说了吧?打开数据库哦
oRS.Find "NameLast = '" & UCase(Request.QueryString("strSearch")) & "'"
'找到符合条件的数据
If oRS.EOF Then '如果数据指针已到底
Response.Write "NameLast=Not+Found&NameFirst=Not+Found&Position=Not+Found"
' 呵呵,那么NameLast就是没有找到符合条件的数据咯
Else
Response.Write "NameFirst="
& Server.URLEncode(oRS("NameFirst"))
& "&NameLast=" & Server.URLEncode(oRS("NameLast"))
& "&Position=" & Server.URLEncode(oRS("Position"))
'找到的话就是找到咯(废话嘛。。。)
End If
oRS.Close
Set oRS = Nothing
oConn.Close
Set oConn = Nothing '关闭并清空数据库对象