从PHP到Actionscript 3动态创建XML
我尝试使用php动态创建一个XML文件,如下所示:从PHP到Actionscript 3动态创建XML,php,xml,actionscript-3,Php,Xml,Actionscript 3,我尝试使用php动态创建一个XML文件,如下所示: header ("content-type: text/xml"); // create doctype $dom = new DOMDocument("1.0"); // create root element $root = $dom->createElement("tracklist"); $dom->appendChild($root); $dom->formatOutput=true;
header ("content-type: text/xml");
// create doctype
$dom = new DOMDocument("1.0");
// create root element
$root = $dom->createElement("tracklist");
$dom->appendChild($root);
$dom->formatOutput=true;
// create child element
foreach ($commonPlaylist as $value) {
$trackArray = getTrackForID($value['ID']);
$item = $dom->createElement("track");
$root->appendChild($item);
foreach ( $trackArray as $key => $value) {
$attr = $dom->createAttribute($key);
$item->appendChild($attr);
$attrValue = $dom->createTextNode($value);
$attr->appendChild($attrValue);
}
}
echo $dom->saveXML();
文件的输出是正常工作的xml
<?xml version="1.0"?>
<tracklist>
<track ID="4" title="Track01" artist="Artist01" url="" length="" coverURL=""/>
<track ID="1" title="Track02" artist="Artist02" url="" length="" coverURL=""/>
<track ID="8" title="Track03" artist="Artist03" url="" length="" coverURL=""/>
</tracklist>
}
我根本没有得到任何输出。如果我将该文件作为字符串读取,则会得到整个PHP代码。我做错了什么
提前感谢您的帮助
问候,,
Matteo检查变量名
- 您正在跟踪myXML&XML变量名是myXML
processXML()?试着像下面的代码那样修改它,看看是否跟踪到了“Hi!”部分
function processXML(e:Event):void
{
trace('Hi!');
var myXml:XML= new XML(e.target.data);
trace(myXML);
}
顺便说一句,使用Flash调试器可能比猜测出错的地方有用得多:)因为Flash Professional附带的调试器太差劲了,所以我只能推荐它,它在处理Flash项目时节省了我很多时间。拥有HTTP流量分析工具也不会有什么坏处。我在写问题时输入了这个工具。这不是我代码中的问题。好的,更正了变量名。在创建新的XML对象之前跟踪URL请求的输出如何?这是否显示了输出?如果我错了,请纠正我。我想不会的,因为URL应该指定方案http://'localhost/getPlaylist.php',我现在可以在脸上打自己了。我正在本地服务器上测试这个。我总是像这样在浏览器中检查文件,同时在没有localhost:8888的情况下将其加载到flash文件中,这就是PHP无法工作的原因。谢谢!!!Jap是对的,我只是等了几分钟,直到我能接受。谢谢
function processXML(e:Event):void
{
trace('Hi!');
var myXml:XML= new XML(e.target.data);
trace(myXML);
}