AS3 to PHP to Mysql


AS3 to PHP to Mysql

我需要一些帮助,通过AS3的PHP从mysql获取数据。

我已经更改了几次代码

此处为AS3代码

function requestData():void {
var variables:URLVariables = new URLVariables();
var varSend:URLRequest = new URLRequest("http://www.bestlincs.co.uk/forum/iphone.php");
varSend.method = URLRequestMethod.POST;
varSend.data as String;

urlLoader.dataFormat = URLLoaderDataFormat.TEXT;
urlLoader.addEventListener(Event.COMPLETE, completeHandler);
    function completeHandler(evt:Event):void{
        var urlLoader:URLLoader = evt.target as URLLoader;
        var resultData:String = urlLoader.data as String;
        if (resultData == "") {
            output_txt.text = "No data coming through";
        } else {
            output_txt.condenseWhite = true;
            output_txt.htmlText = "" + resultData;
        }
    }
urlLoader.load(varSend);
}
requestData();
stop();

PHP代码在这里

<?
include "../lib/forumconnect.php";

$query = mysql_query("SELECT * FROM posts WHERE post_owner='0'");
$body="";
while($row = mysql_fetch_array($query))
{
    $body.=$row['post_body']."<br>";    
}
echo "returnBody=".strip_tags($body);
echo "returnBody=".strip_tags($body);
mysql_close();
exit();
?>

现在我得到错误

场景1,第1层,第1帧,第9行1120:访问未定义的属性事件。场景1,第1层,第1帧,第26行1120:访问未定义的属性varLoader。

有人能解释一下吗???

错误消息说明了一切。

event.target.data中没有名为returnBody的属性。

你应该看看这个而不是

var urlLoader:URLLoader = event.target as URLLoader;
var resultData:String = urlLoader.data as String;

所以你的功能变成了这样:

function completeHandler(evt:Event):void{
    var urlLoader:URLLoader = evt.target as URLLoader;
    var resultData:String = urlLoader.data as String;
    if (resultData == "") {
        output_txt.text = "No data coming through";
    } else {
        output_txt.condenseWhite = true;
        output_txt.htmlText = "" + resultData;
    }
}

使用"&"允许flash播放器获取变量。

echo "&returnBody=".strip_tags($body);

编辑(示例):

        public static var l:URLLoader = new URLLoader;
        public static var vars:URLVariables = new URLVariables();
        public static var req:URLRequest;
        public static function $req() {
            req = new URLRequest("sitelink");
            l.dataFormat = URLLoaderDataFormat.TEXT;
            l.addEventListener(Event.COMPLETE, $req_done);
            vars.someVar = "value";
            req.method = URLRequestMethod.POST;
            req.data = vars;
            l.load(req);
        }
        private static function $req_done(e:Event) {
            l.removeEventListener(Event.COMPLETE, $req_done);
            var $g:* = l.data;
            trace($g);
        }