0

トップ 10 プレーヤーのテーブルをフラッシュで作成する必要があります。「TOP 10」ボタンをクリックすると、データベースからデータを取得し、ゲーム画面にリストを印刷する必要があります。ここで作りたいのはビジョンです。

私のアプリ

PHP から XML を動的に作成したので、データを Action Script 3 に送信する必要があります。

これがtop.phpファイルです

<?php 
    $time = $_POST['time'];     
    session_start();
    $name = $_SESSION['vardas']; 
    $time = strtotime($time);
    $times = date('s:H:i', $time);
    $_SESSION['test'] = $times;
    $_SESSION['test1'] = $username;


    $mysqli = new mysqli("localhost","my_db","pass","my_db");

    $query = "SELECT userName,time FROM eurokos ORDER by time ASC LIMIT 10";
if (!$mysqli->set_charset("utf8")) {
    printf("Error loading character set utf8: %s\n", $mysqli->error);
} else {
//    printf(" ", $mysqli->character_set_name());
}
    echo '<?xml version="1.0" encoding="UTF-8"?>';
    echo '<results>';
    if ($result = $mysqli->query($query)) {
        while ($row = $result->fetch_assoc()) {
           echo '<user name="'.$row["userName"].'" time="'.$row["time"].'" />';
        }
        $result->free();
    }
    echo '</results>';
    $mysqli->close();
?>

XML は次のようになります。

<?xml version="1.0" encoding="UTF-8"?>
  <results>
    <user name="someone" time="xxx" />
    <user name="someone" time="xxx" />
    [...]
</results>

そして、これが私のアクションスクリプトコードです:

 var myXml:XML;

    function uploadTops():void
    {
        var myLoader:URLLoader = new URLLoader();
        myLoader.load(new URLRequest("top.php"));
        myLoader.addEventListener(Event.COMPLETE, processXML);
    }
    function processXML(e:Event):void {
    myXml = new XML(e.target.data);
    trace(myXml);
    }
    function myButton(e:MouseEvent):void
    {
        uploadTops();
    //  _message = myXml.user.*; //these lines are wrong, I donn't know how to print answer
    //  message_txt.text = _message;
    }

エラーが発生しました:

Error #1090: XML parser failure: element is malformed. when trying to trace

at MemoryGame/processXML()[C:\Users\Petras\Downloads\geraseaa\geraseaa\gerase\MemoryGame.as:570]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()

回答ありがとうございます。

4

1 に答える 1