一年多前写的一份教材,原理上和FLASH游戏得分排行榜一样,改进一下就可以了。教材是以前写的,菜鸟作品~~~不足之处,多多指导。希望可以帮到你。oonnee上
先看看效果
2003-07-08 写的一份东东~~
很久都没有写过教材了,为了感谢大家的支持,只好硬着写一篇吧,就暂时叫FLASH和ASP之间的通讯吧。希望也可以说出点东西,当然不足之处,大家就要多多包涵,多多指出啦,废话不说了,开始啦~~~~~:
FLASH做为一种WEB平台,在互动性非常强大,加于ASP,PHP、XML,javascript,等等语言或后台的支持,只要发挥你的想象和创意,可以腾云驾雾啦:)
目前很多都是网站都是采取了FLASH+ASP等开发,那就说下他们之间是怎么联系的啦~
下面我做一个简单的FLASH+ASP+Access的留言版,其实也可以说是一个简单的聊天室,在制作中,说明一下FLASH做为WEB平台怎么和后台的联系
先看看下面的的FLASH :
第一个是用来发送信息的,它会把FLASH填写的信息发送到ASP中,然后ASP获取变量,存储数据库中,返回发送一个接收到的信息给FLASH,这样FLASH就知道变量已经存储了,完成了信息发送存储数据的过程。
第二个FLASH是读取ASP显示出来的数据,这些数据按照一定的写法传递给FLASH,然后FLASH显示出来。如果将FLASH设置几秒中检测新数据,那么他可以时实的返回数据,可以说是一个简单的聊天室,FLASH不单可以在网上执行这些发送和读取的方法,还可以本地运作这些东西,对方立即可以看到你发送的信息。
FLASH不单可以做这些简单的东西,可以用FLASH Communication Server 制作视频聊天室等等,但是最重要的还是FLASH和WEB之间的一些数据的传递
上面的FLASH是发送信息的
下面是读取信息的
可以下载到本地运行,只要在发送信息,另一个FLASH就可以读取到发送来的信息
代码分析:
发送端FLASH:---------------------------------
System.useCodePage = true; //显示中文,不加的话,中文乱码
fscommand("allowscale", "false");
//初始化一些文本
var title = "FLASH与ASP制作实时留言版";
var f_title = "请填写信息标题";
var f_content = "请填写信息内容";
var f_name = "请填写你的姓名";
function subflash() {
if (_root.f_title == "" || f_content == "" || f_name == "") {
getURL("javascript :alert(’请填写好信息!’)");
//如果文本是空的话,调用js的警告框
} else {
//建立LoadVars()对象
sendload = new LoadVars();
sendload.f_title = f_title;
sendload.f_content = f_content;
sendload.f_name = f_name;
sendload.send = "ok";
mc.msg = "数据正在发送中";
_root.mc.gotoAndStop("send");
//sendAndLoad事件
sendload.sendAndLoad("http://www.szbandroom.com/zhou/test/bbs.asp", sendload);
sendload.onLoad = function(success) {
if (sendload.pass == "ok") {
mc.msg = "恭喜!数据发送成功";
f_title = "请填写信息标题";
f_content = "请填写信息内容";
f_name = "请填写你的姓名";
_root.mc.gotoAndPlay("ok");
}
};
}
}
-----------------------------------------
发送端比较简单 就是个sendAndLoad的命令
代码分析:接收端FLASH:---------------------------------
System.useCodePage = true;
fscommand("allowscale", "false");
//load的地址
f_url = "http://www.szbandroom.com/zhou/test/bbs.asp";
_root.mc._visible = false;
//加个random可以保证ASP的缓存
r = random(9999);
//建立LoadVars();对象
loadinfo = new LoadVars();
//当_root一装载的时候调用load();的地址
_root.onLoad = function() {
load(f_url+"?r="+r+url);
};
//当按钮传来的参数时候 重新Load();
function load(url) {
loadinfo.load(url);
//下面的我换成一个MC在LOAD的动画
// title = "正在读取留言数据。。";
// f_title = "正在读取留言标题";
// f_content = "正在读取留言内容。。";
// f_name = "正在读取留言名字。。";
mc._visible = true;
mc.gotoAndPlay(2);
loadinfo.onLoad = function(success) {
if (loadinfo.f_id != undefined) {
x="ok";
title = "留言日期:"+loadinfo.f_data;
f_title = loadinfo.f_title;
f_name = loadinfo.f_name;
f_content = loadinfo.f_content;
f_next = loadinfo.f_next;
f_prev = loadinfo.f_prev;
f_data = loadinfo.f_id;
f_total = "一共有"+loadinfo.f_total+"条留言";
if (f_prev == "end") {
_root.prev._visible = false;
} else {
_root.prev._visible = true;
}
if (f_next == "end") {
_root.next._visible = false;
} else {
_root.next._visible = true;
}
} else {
mc.gotoAndPlay(2);
}
};
}
//前后按钮的翻页 传LOAD(url)
_root.next.onPress = function() {
load(f_url+"?r="+r+url+"&offset="+f_next);
};
_root.prev.onPress = function() {
load(f_url+"?r="+r+url+"&offset="+f_prev);
};
asp部分代码:---------------
运行结果:
f_id=38&f_title=ggg&f_name=sdh&f_content=jdj&f_data=2003-11-12&f_prev=end&f_next=1&f_total=13
asp部分是用Dreamweaver 自动生成的~~~呵呵,虽然代码烦琐很多,但是还是比较方便的,也对应改了很多。
偶蛮喜欢Dreamweaver 编写的ASP 代码长了点,但用惯了也蛮方便的
附:qq: 1335096 oonnee
高手多多指教.....
本文作者: