2

我有一个 mysql 数据库,其中包含一个包含 PATH 到图像的表。

我想将所有图像加载到 TileList。现在我在 PHP 中有这个:

<?PHP

mysql_connect("localhost", "root", "root");
mysql_select_db("prototipo");

$result = mysql_query("select entretenimiento_id, e_nombre, e_imagen from          entretenimiento");

echo "<?xml version=\"1.0\" ?><entretenimiento>";

while($row = mysql_fetch_assoc($result))
{
    echo "<e_nombre>" . $row["e_nombre"] . "</e_nombre>";
    echo "<e_imagen>" . $row["e_imagen"] . "</e_imagen>";   
}

echo "</entretenimiento>";

?>

这应该为我获取图像的路径、名称,以便它出现在显示图像的图块的标签上,并为我带来 id,以便我可以在单击该图像时启动另一个查询。

所有这些都设置为动态创建的 XML。

现在我的问题....我如何加载这个???AS3怎么办??我已经有了用于 tilelist 的 AS3,我只需要将这个动态创建的 XML 从 PHP 加载到它。

提前致谢。对不起,如果我搞砸了英语,它不是我的主要语言。我是南美人。


我有一个部分答案:

var path:String = "http://localhost/entretenimiento.php";
xmlLoader:URLLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, onLoadComplete);
xmlLoader.load(new URLRequest(path));       

function onLoadComplete(e:Event):void {
    var xmlData:XML = new XML(e.target.data);
    //trace(xmlData);

    for (var i:int=0; i<xmlData.*.length(); i++)
    {
        myTileList.addItem({label:xmlData.e_nombre[i], source:xmlData.e_imagen[i]});
        //trace(xmlData.e_nombre[i]);
    }

}

尽管这向我显示了图块上的图像和标题,但我还得到了另外两个空图块,并且在跟踪中它们显示为“未定义”。为什么会这样?

4

1 回答 1

0

这是一个应该可以工作的示例代码:

var xmlLoader:URLLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, showXML);
// change the path of your php file
xmlLoader.load(new URLRequest("your-file.php"));
function showXML(e:Event):void
{
    var entretenimiento:XML = new XML(e.target.data);
    // for each row :
    for (var x:XML in entretenimiento.loc)
    {
        // Change the name of your tilelist
        myTileList.addItem({label:x.e_nombre, source:x.e_imagen});
    }
}
于 2011-09-21T18:52:17.873 回答