所以我有这两个脚本可以相互通信以在线创建一个xml文件。我现在的方式是,AS3 swf 将一些变量发送到一个 php 脚本来编写。我得到了创建部分,但由于某种原因,php 没有写入 xml 文件。我尝试将变量更改为简单的“foobar”字符串,它可以工作。但如果我这样做:
var temp:XML = new XML(<test></test>);
它不写。那么,这是怎么回事,这正常吗?
AS3
function SaveXml(inputxml:XML){
var temp:XML = <teste></teste>;
var variables:URLVariables = new URLVariables();
variables.xmlfile = temp;
variables.folder = TestProperties.Username;
var request:URLRequest = new URLRequest("savexml.php");
request.method = URLRequestMethod.POST;
request.data = variables;
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
try{
loader.load(request);
}
catch (error:Error) {
trace("Unable to load URL");
}
loader.addEventListener(Event.COMPLETE, completeHandler);
function completeHandler(e:Event)
{
//something when complete;
}
}
PHP
<?php
date_default_timezone_set('GMT');
$xmlfile = $_POST["xmlfile"];
$folder = $_POST["folder"];
$filename = date('ymdhis').".xml";
if(! file_exists("./user/".$folder."/")){
mkdir("./user/".$folder."/", 0777);
}
$handle = fopen("user/".$folder."/".$filename, 'w+');
fwrite($handle, $xmlfile );
fclose($handle);
echo "result=success";
?>