2014-05-24 23 views
0

我有一款遊戲在遊戲結束時請求併發送高分信息。我有請求工作,所以它從mySQL數據庫中加載前十的分數,但是當我嘗試從遊戲發送到php時,我沒有收到任何數據。我對PHP相當陌生,我一直在看教程,但即使是最簡單的東西似乎也沒有顯示PHP方面的數據。在Godaddy上將XML從AS3發送到PHP

AS3

private function formatScore():void{ 
    sendXML = new XML(<score> 
         <points>{playerInfo.pointsTotal}</points> 
         <initials>Ben</initials> 
         </score>); 
} 

private function saveScores():void{ 
    sendScoreRequest = new URLRequest(ADD_SCRIPT); 
    sendScoreRequest.data = sendXML.toXMLString(); 
    sendScoreRequest.method = URLRequestMethod.POST; 
    sendScoreRequest.contentType = "text/xml";    
    loader.addEventListener(Event.COMPLETE, xmlSent); 
    loader.load(sendScoreRequest); 
} 

PHP

<?php 
//--- load in xml from flash --- 
$data = file_get_contents('php://input'); 
$scoreXML = simplexml_load_string($data); 
?> 

任何幫助將是真棒,謝謝你提前。

回答

1

也許這會幫助你獲得一些結果,並希望能讓你順利。

private function formatScore():void{ 
    sendXML = new XML(<score> 
         <points>{playerInfo.pointsTotal}</points> 
         <initials>Ben</initials> 
         </score>); 
} 

private function saveScores():void{ 
    var variables:URLVariables = new URLVariables(); 
    variables.scoreXML = sendXML.toXMLString(); 

    sendScoreRequest = new URLRequest(ADD_SCRIPT); 
    sendScoreRequest.data = variables; 
    sendScoreRequest.method = URLRequestMethod.POST; 
    sendScoreRequest.contentType = "text/xml";    
    loader.addEventListener(Event.COMPLETE, xmlSent); 
    loader.load(sendScoreRequest); 
} 

PHP:

<?php 
    //--- load in xml from flash --- 
    $data = $_POST['scoreXML']; 
    $scoreXML = simplexml_load_string($data); 
?> 
+0

對於所有意圖和目的,我知道應該工作,但它仍然沒有放置任何東西到數據庫中。我試圖基本上覆制和粘貼你給的東西,但我仍然沒有得到任何東西。爲了確保它正確地讀取simpleXML,我在php中創建了一個新的simpleXML對象,並從中讀取了它,而不是DID發送的內容。所以它要麼不能正確解析數據,不能正確發送數據,要麼godaddy有一些東西來混淆POST數據。 – WetFloorSign