Flash AS3 和PHP脚本的通信实例

2015年06月11日 前端技术, 网站建设 暂无评论 阅读 32 views 次

Flash从很早的版本就支持和外部通信脚本,如ASP、PHP、JSP等。现在最新的通信方式当然已经更先进(或者说繁琐?),从Flash4一路走来,我还是比较喜欢直接发变量过来,然后解析,示例脚本如下:

Flash端:

package {

import flash.display.MovieClip;

import flash.display.SimpleButton;

import flash.events.*;

import flash.net.*;

import flash.text.*;

public class main extends MovieClip

{

//构造函数
u=3436479451,2330531129&fm=15&gp=0
public function main()

{

//加载动画完毕,则取数据

root.loaderInfo.addEventListener(Event.COMPLETE,getdata);

}

//取数据

private function getdata(e:Event):void

{

var loader:URLLoader = new URLLoader();

var url:URLRequest=new URLRequest("http://localhost/loaddata.php");

var postdata:URLVariables = new URLVariables();

url.method=URLRequestMethod.POST;

loader.dataFormat=URLLoaderDataFormat.VARIABLES;

//如果有参数,在这里写

//postdata.ID=ID;

//url.data=postdata;

loader.addEventListener(Event.COMPLETE,showdata);

loader.load(url);

}

//加载数据完成调用

private function showdata(e:Event):void

{

var returndata:URLVariables=e.currentTarget.data;

//success是回传的成功标记

if (returndata.success=="true")

{

var count:int=Number(returndata.count);

for(var i:int=0;i<count;i++)

{

msg.appendText(returndata["data"+i]+"\r\n");

}

}

}

}

}

主要的要点就是URLLoader类的使用,传参数的话,使用URLVariables将参数传出。

PHP脚本:

<?php

//用一个占位符保证回传的格式

$returnstr="option=getdata";

for($i=0;$i<20;$i++)

{

$returnstr.="&data".$i."=".$i;

}

//用占位符保证回传尾部没有冗余

$returnstr.="&count=".$i."&success=true&opt=ok";

echo $returnstr;

?>

这个没什么好说的,就是随便传些数字过去。

给我留言

您必须 登录 才能发表留言!

Copyright © 大一网 保留所有权利.  

用户登录

分享到: