关于FLASH与后台连接技术关于FLASH与后台连接技术 [ 2006-01-16 16:45:54 | 作者: Admin ] 字体大小: 大 | 中 | 小 应几个朋友的要求,今天翻了翻册子,写出了FLASH与后台连接的技术!喜欢对其他的朋友也有些帮助! 所谓FLASH与后台连接的技术,严格地说,就是指FLASH如何跟这些中介程序(ASP/ASP。NET,Perl,PHP,JSP,Cold Fusion等)交换数据,有两点必须强调: 1.FLASH只是一个网络客户端界面显示的技术,没有直接连接数据库的能力,不像VB开发应用程序那样,经过ODBC等直接连接数据库(用FLASH制作桌面应用程序,经过第3方软件连接数据库API打包则例外)。 2.FLASH没有跟任何平台(.net/J2EE)或者服务器编程语言有独家联系。因此任何服务器编程语言只要依从FLASH指定格式生成数据或业界标准(XML或SOPA),都可以跟FLASH连接,并没有所谓“XX与FLASH有更好的整合”之说。当然,某些服务器编程语言提供简单的语法去开发复杂的东西,提高了开发效率;又或者说,某些平台的服务器调节得好,执行效率高,对FLASH的提交可以有更快的响应。 Flash与数据库的集成 [ 2006-02-27 07:09:25 | 作者: Admin ] 字体大小: 大 | 中 | 小 下文是从网上收集的英文资料整理而成的,希望对大家有所帮助。 本文解释如何连接flash到一个Access数据库,flash是不能直接与数据库交换信息的,我们必须借助asp(或其它服务器端的脚本语言)。ASP可以访问数据库,并可将信息传递给FLASH。下面我将建立一个简单的flash地址簿来演示这一过程。 注:要完成本教程您的PC上需要有 1、 flash 5(或 flash 5.0以上的版本) 2、 (Internet information Services 4.0(或IIS5.0) 3、 Microsoft Access 一、预备知识: flash中的脚本命令: loadVariables(url,location); 通过loadvariable方法可以实现与ASP传递信息。 Loadvariables命令从URL所指的文件内容中获得信息,并将这些信息赋给FLASH中的变量。 其中URL所指的文件内容必须为MIME格式或者为URL格式编码的格式。 例如:URL所指定的页包含如下内容: Var1=Test&Var2=Demo Flash中变量Var1的值被赋予“test”,Var2的值被赋予“Demo”。 二、数据库设计: 建立只包含一个表:Contacts的数据库addressbook.mdb。Contacts表的结构如下: Field nameype Size ContactID AutoNumber - Name Text 50 Telephone Text 50 City Text 50 Notes Memo - 三、asp设计: 用编辑软件制作名为:getdetails.asp getdetails.asp代码如下: <% Set DataConn = Server.CreateObject("ADODB.Connection") DataConn.Open "Driver=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("AddressBook.mdb") Set cmdTemp = Server.CreateObject("ADODB.Command") Set rstContacts = Server.CreateObject("ADODB.Recordset") cmdTemp.CommandText = "Select * From Contacts" cmdTemp.CommandType = 1 Set cmdTemp.ActiveConnection = DataConn rstContacts.Open cmdTemp, , 1, 3 rstContacts.Move CLng(Request("Record")) Response.write "Name=" & Server.URLEncode(rstContacts("Name")) & "&" Response.write "Telephone=" & Server.URLEncode(rstContacts("Telephone")) & "&" Response.write "City=" & Server.URLEncode(rstContacts("City")) & "&" Response.write "Notes=" & Server.URLEncode(rstContacts("Notes")) & "&" Response.write "TotalRecords=" & rstContacts.RecordCount rstContacts.Close DataConn.Close %> 在浏览器中查看getdetails.asp?record=2,结果如下: Name=Steve+Tipson&Telephone=%2B44+2123+121+1245&City=Birmingham&Notes=Artist+in+waiting%2E&TotalRecords=4 四、flash设计 1、在flash中建立一个名为AddressBook的movie clip,用于地址簿,它包含五个动态文本框用于显示数据库信息,两个按钮(一个左箭头、一个右箭头)用于数据库记录导航,此MC大致如下图如示: 左箭头上的Actionscript为: on (release) { CurrentRecord--; if (CurrentRecord == -1) CurrentRecord = TotalRecords-1; loadVariables ("getdetails.asp?Record=" add String(CurrentRecord), this); } 右箭头上的Actionscript为: on (release) { CurrentRecord++; if (CurrentRecord == TotalRecords) CurrentRecord = 0; loadVariables ("getdetails.asp?Record=" add String(CurrentRecord), this); } 2、将movie clip“ AddressBook”放入主场景中。 在MC上加actionscript为: onClipEvent(data) { strName = Name; strTelephone = Telephone; strCity = City; strNotes = Notes; strPosition = "Record " add String(CurrentRecord+1) add " of " add String(TotalRecords); } onClipEvent(load) { CurrentRecord = 0; loadVariables ("getdetails.asp?Record=0", this); } |