as3 和PHP 后台交互

来源:互联网 发布:数据帧格式设计 编辑:程序博客网 时间:2024/05/18 09:30

第一种 不传参 直接读取PHP文件

btn.addEventListener(MouseEvent.CLICK,loadTxt);
function loadTxt(evt:MouseEvent):void
{
       varurlLoader:URLLoader=new URLLoader();
             urlLoader.dataFormat=URLLoaderDataFormat.VARIABLES;
       urlLoader.load(newURLRequest("http://localhost/as3/url2.php"));
       urlLoader.addEventListener(Event.COMPLETE,finish);
}
function finish(evt:Event):void
{
       varmydata:URLVariables=URLVariables((evt.currentTarget asURLLoader).data);
             mytxt.text="国家是:"+mydata.state+"\n";
             mytxt.text+="var1是:"+mydata.var1;
}
php端代码:
<?
       $state="中华人民共和国";
       $var1="我爱你";
       echo"state=".$state."&var1=".$var1;
?>

 

第二种 无参数 读取XML文件

 

btn.addEventListener(MouseEvent.CLICK,loadTxt);
function loadTxt(evt:MouseEvent):void
{
       varurlLoader:URLLoader=new URLLoader();
       urlLoader.load(newURLRequest("data.xml"));
       urlLoader.addEventListener(Event.COMPLETE,finish);
}
function finish(evt:Event):void
{
      varmydatas:XML=XML((evt.currentTarget asURLLoader).data);
             mytxt.text=mydatas.c1.toString()+","+mydatas.c2.toString();

}
xml文件内容:
<?xml version="1.0"encoding="utf-8"?>
<cities>
      <c1>北京</c1>
      <c2>上海</c2>
</cities>
上述代码结果:
北京,上海

 

第三种 无参数 PHP生成XML文件

 

btn.addEventListener(MouseEvent.CLICK,loadTxt);
function loadTxt(evt:MouseEvent):void
{
       varurlLoader:URLLoader=new URLLoader();
       urlLoader.load(newURLRequest("http://localhost/as3/xml.php"));
       urlLoader.addEventListener(Event.COMPLETE,finish);
}
function finish(evt:Event):void
{
       varmydatas:XML=XML((evt.currentTarget asURLLoader).data);
             mytxt.text=mydatas.c1.toString()+","+mydatas.c2.toString();
}
php端:
<?
       //你可以使用php操作xml的函数
       //这里为了简单起见只是echo出来
       echo "<?xml version=\"1.0\"encoding=\"utf-8\"?>";
       echo"<cities>";
       echo"<c1>北京</c1>";
       echo"<c2>上海</c2>";
       echo"</cities>";
?>

 

第四种 GET 传参

System.useCodePage=true;
btn.addEventListener(MouseEvent.CLICK,loadTxt);
function loadTxt(evt:MouseEvent):void
{
       varurlLoader:URLLoader=new URLLoader();
              varrequest:URLRequest=new URLRequest();
             request.url="http://www.baidu.com/s";
             request.method=URLRequestMethod.GET;
             request.data="wd=flash";

       urlLoader.load(request);
       urlLoader.addEventListener(Event.COMPLETE,finish);
}
function finish(evt:Event):void
{
    mytxt.text=(evt.currentTargetas URLLoader).data;
}

第五种 POST 传参

System.useCodePage=true;
btn.addEventListener(MouseEvent.CLICK,loadTxt);
function loadTxt(evt:MouseEvent):void
{
       varurlLoader:URLLoader=new URLLoader();
              var request:URLRequest=newURLRequest();
              varvars:URLVariables=new URLVariables();
             vars.wd="flash";

             request.url="http://www.baidu.com/s";
             request.method=URLRequestMethod.GET;
             request.data=vars;
       urlLoader.load(request);
       urlLoader.addEventListener(Event.COMPLETE,finish);
}
function finish(evt:Event):void
{
    mytxt.text=(evt.currentTargetas URLLoader).data;
}
这里data是URLVariables是值对,注意区别