したがって、相互に通信してxmlファイルをオンラインで作成するこれら2つのスクリプトがあります。私が今持っている方法では、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";
?>