您的位置:首页 > 编程语言 > ASP

每天学一点flash(11) as3.0 与asp 通信 (1)

2007-08-20 14:08 393 查看
经过几次的尝试啊,今天终于实现了as3.0与asp通信。我用access做了一个最简单的测试其目的就是调试代码方便。好现在开始吧

首先:必须准备asp 与access文件,而且要先用代码连接上access数据,这个是必须做的步骤:
我建了一个conn.asp文件,目的是连接access数据库,我改其名字为Msg.mdb

Asp文件:
<%
Dim conn
Set conn=Server.CreateObject("ADODB.Connection")
conn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("Msg.mdb")

%>

我用netbox做一个小型的asp服务器,其功能相当于iis 而且使用起来不占用内存。
输入了网址: http://localhost/conn.asp 或者http://127.0.0.1/conn.asp


第二步:做一个保存数据库的asp文件 ,我改名字为:mysave.sp, 代码如下
<!-- #include file=conn.asp -->
<%
if request("myname")="" then
response.Write("no data")
response.End()
else

u_name=Request("myname")


sql="Insert into data (Name) values ('"&u_name&"')"
conn.Execute(sql)
conn.close
Set conn=Nothing
Response.Write "aspvalue=ok"
end if
%>

解析:这sql一些语句操作,我做了最简单只是做一个字段。其目的就是调试方便。
sql="Insert into data (Name) values ('"&u_name&"')"
这些句子是就是sql插入的语句,不明白的话要参考一下sql的语法。和asp的语法

附录:access表



第三步,开始到我们的fla文件,新建一个as3.0的文档
第一步:我在场景上弄了一个输入文本,名称为inputname, 在最大字符串限制里面 输入大一点的数字,我写了100个字符
在场景上就有一个输入文本框与一个提交的按钮。



在帧上我添加了代码:
System.useCodePage=true;
var myname:String="";

var variables:URLVariables=new URLVariables();//使用 URLVariables 类可以在 Flash® 应用程序和服务器之间传输变量。
var myrequest:URLRequest=new URLRequest("http://localhost/mysave.asp");
var loader:URLLoader = new URLLoader();

mybutton.addEventListener(MouseEvent.CLICK,onclik);
function onclik(e:Event)
{

variables.myname=inputname.text;
myrequest.data=variables;
myrequest.method=URLRequestMethod.POST;//指定 URLRequest 对象为 POST。
loader.dataFormat = URLLoaderDataFormat.TEXT;
loader.load(myrequest);

}

这里有个提交按钮的监听,我的提交按钮名称为mybutton,现在导出文件
后在浏览器 http://localhost/indenx.swf 由于我的文档名字为indenx.swf
我用netbox做调试器。当调试的时候不好打开数据库,不然会写不入去。
当输入一个文本,调试成功后,数据库就一个字段就有数据了。这些最简单的数据操作

问题:当我们调试成功后,接下来我们的工作是什么?
回答:我们利用这些原理做一个简单的留言版。

拓展,这个代码其实是很简单的测试,功能不好,这里只是提供一个简单的方法:

接下来:我们看一下代码 做这个asp连接通信,现在我越来越喜欢flash.net这个包。其实这个包有几个很常用的类:例如:URLRequest,URLVariables,URLLoader 等,往往这几个类都是要一起使用,最常见就是URLRequest

看上面的代码:里面有三个主要对象URLRequest,URLVariables,URLLoader类创建的对象:myrequest variables loader 这三个都担任了不同的角色:我们可以看出:
variables将变量字符串转换为指定 URLVariables 对象的属性。代码是这个
variables.myname=inputname.text;

我打比方:URLVariables对象的就是制造变量的工厂,他打包这些变量送给了URLRequest,的对象, URLRequest得到这份礼物后,整理了后又送给了URLLoader的对象分享。URLLoader根据这份礼物与服务器进行交互操作。

这个比喻不知道适合不。A―――b―――c这样一个传给关系:
A将变量打包送给b ,b又寄给了 c


缺点:这个代码只是测试的效果,当中还有很多地方可以改。
优点:就是简单调试,这样的方法日后我们可以使用一下



文章水平有限:望能见凉
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: