我正在尝试将一个变量从Flash发送到PHP,然后将其回显到flash (暂时忽略函数名等;只是尝试先排除基本问题)。
Flash文件(称为test.as):
var myLoader:URLLoader = new URLLoader();
var file_path:String = "get_this.php";
var myRequest:URLRequest = new URLRequest(file_path);
myRequest.method = URLRequestMethod.POST;
var memberInfo:URLVariables = new URLVariables();
myLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
memberInfo.member_id = 10;
myRequest.data = memberInfo;
myLoader.addEventListener(Event.COMPLETE, onXMLLoad);
myLoader.load(myRequest);
function onXMLLoad(event:Event)
{
trace(myLoader.data);
}PHP (get_this.php):
<?php
header('Content-Type: text/xml');
echo "<?xml version='1.0' encoding='UTF-8'?>";
$member_id = $_POST['member_id'];
echo "member_id=$member_id";
?>但是,当我这样做时,"myLoader.data“上的跟踪返回一个由整个PHP中的每个单词组成的庞大字符串,包括注释,这些注释在本文中被省略(C++/Flash样式注释(//) ),其中一些随机数字由%符号分隔。这当然是一个简单的修复,但我对PHP相当陌生(而且还不太熟悉Flash ),所以如果有人能帮我解决问题,我会非常感激的。
发布于 2015-07-31 09:37:22
首先,在浏览器上测试您的PHP,看看它是否正常工作。其次,您的完整功能应该如下所示:
function onXMLLoad(event:Event)
{
var variables:URLVariables = new URLVariables( event.target.data );
trace(variables.member_id);
}希望这能回答你的问题。
https://stackoverflow.com/questions/31738665
复制相似问题