5D艺术网首页
商城
|
资讯
|
作品
|
博客
|
教程
|
论坛
登录
注册
加为好友
发短消息
来自:
性别:秘密
最后登录:2008-10-28
http://kafeichong.5d.cn/
首页
|
新闻
|
话题
|
博客
|
相册
|
艺术作品
|
社交关系
|
留言板
|
社交圈
2005/05/12 | Flash和Asp数据库的结合应用(3)
类别(flash)
|
评论
(1)
|
阅读(148)
|
发表于 15:50
讲到这里,我们还可以讲一个Load Variables和后台程序的另外一个用法―传递变量,当我们在使用编写html页面的时候,经常会用到通过post表单向后台程序发送数据,实在flash中,我们同样可以做到这一点。
我们可以看到和从txt,或其它文件中取出数据一样,前面两项还是原来的文件地址和所在的MC层,唯一不同的是在最后一个选项上用了Send using Post 。这样的话,在flash中的定义的所有变量(当然也是要在location定义的相应层里,在本例中是level 0 层) 就可以在相应的后台程序中直接引用了,至于如何引用,方法和处理html的form中post 过去的变量方法一样。如php中可以直接引用,asp则是用Request.form("变量名")或者Reques.QueryString(“变量名”) 来引用该变量。
如果相反,要从ASP中获取对应变量则可以使用GET 方式。(实际使用时无论使用GET还是POST都可以)
了解了这个函数使用方法之后,我们来看看下面这个简单的例子:
例一 成绩查询
这个例子是把Access内的数据读出来,并在Flash内显示出来。这个例子一共有三个主要文件,数据库文件score.mdb、Flash文件score.swf和ASP文件score.asp。
这三个文件的关系是:
我们利用score.swf来制作查询界面,并将用户输入的数据,传递给score.asp。而score.asp将接收到的数据和数据库score.mdb中存在的数据进行比对,并将结果回传给score.swf显示出来。
一个是Access的数据库文件score.mdb,它有一个score表,有四个字段:
ID,StudentName(姓名),CourseName(学科),ScoreMark(成绩)。
现在我们就来看看这个例子的制作过程吧。
第一个影帧,Action是Stop,有一个供用户输入查询字段的文本框:Input1、Input2、Input3(目前只使用一个),两个按钮,一个是“确定”按钮,另一个是“取消”按钮:
“确定”按钮的Action是:
on (release) {
gotoAndPlay(2);
}
“取消”按钮的Action是:
on (release) {
Input1 = "";
Input2 = "";
Input3 = "";
}
第二个影帧的Action是:loadVariablesNum("score.asp", 0, "GET");
这个Action的作用是通过ASP文件把Access数据库内符合用户查询条件的数据读出来。
第三个影帧的Action是:
if (StudentName ne "") {
gotoAndStop(9);
}
意思是如果StudentName不等于空值的话,就跳到第九个影帧;否则将会执行下去(即播放下一个影帧)。
第4-7个影帧都没有Action哦。
第八个影帧的Action是:
gotoAndPlay(3);
如果没有符合的数据的话,就一直读到有为止;读到了就跳到第九个影帧哦。
那么再来看看第九个影帧:
一共有三个动态文本框:StudentName, CourseName,ScoreMark
数据库内符合查询条件的数据将会显示在他们之中哦!
还有一个“返回”按钮,它的Action是:
on (release) {
gotoAndStop(1);
}
好了,再来看看score.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("score.mdb")
oRS.Open "SELECT * FROM Score", oConn, 2, 3
' 打开数据库哦
oRS.Find " StudentName = '" & UCase(Request.QueryString("Input1")) & "'"
' 找到符合条件的数据
If oRS.EOF Then ' 如果数据指针已到底
Response.Write " StudentName=Not+Found&CourseName=Not+Found&ScoreMark=Not+Found"
' 就是没有找到符合条件的数据咯
Else
Response.Write " StudentName ="
& Server.URLEncode(oRS("StudentName "))
& "&CourseName =" & Server.URLEncode(oRS("CourseName "))
& "&ScoreMark=" & Server.URLEncode(oRS("ScoreMark"))
End If
oRS.Close
Set oRS = Nothing
oConn.Close
Set oConn = Nothing ' 关闭并清空数据库对象
例二 随机产生单词
从数据库中随机抽取英文单词,进行训练,这个例子一共有三个主要文件,数据库文件word.mdb、Flash文件word.swf和ASP文件word.asp。
这三个文件的关系是与例一相似。
一个是Access的数据库文件word.mdb,它有一个word表,有四个字段:
ID,word,explain,symbol。
0
评论
Comments
日志分类
首页
[223]
javascript
[29]
asp
[62]
常识
[12]
SQL
[8]
文学
[2]
Dreamweaver
[22]
网页设计
[25]
flash
[20]
片言碎语
[21]
php
[6]
web standard
[16]