2011-11-05 17 views
0

私はプロジェクトにAS3を使用しています。PHPにいくつかのフラッシュ変数を送信し、MySQLのdatabeseをチェックして、結果をFlashに返す必要があります。 new URLRequest(URL + "?p=" + SelectedCountry + "&action=check&nocache=" + Math.floor(Math.random() * (10000000)));PHP変数をフラッシュする変数

、そこに選択した国との行であればPHPコードだけでMySQLをチェックします:私はこれでこれを行う

if($_REQUEST['action'] == "check") { 

    $q = mysql_query("SELECT * FROM myDB WHERE country = '".$_REQUEST['p']."'"); 

    if(mysql_num_rows($q) == 0) { 
     echo "nqma"; 
    } else { 
     echo "ima"; 
    } 
} 

OK、それは大丈夫ですが、私はこれを使用することができますので、それは、動作しますFlashで:

if(e.target.data == "ima") { 
    uiRepCountryLabel.text = "Ima"; 
} 
if(e.target.data == "nqma") { 
    uiRepCountryLabel.text = "Nqma"; 
} 

しかし、どのような場合、私はこのように見えるようにPHPの結果を作りたい:

if($_REQUEST['action'] == "check") { 
    $q = mysql_query("SELECT * FROM myDB WHERE country = '".$_REQUEST['p']."'"); 
    if(mysql_num_rows($q) == 0) { 
     echo "res=nqma"; 
    } else { 
     echo "res=ima&hisCountry=Bulgaria&hisPhoneNumber=000000123&hisCity=Svishtov&his....."; 
    } 
} 

Flashでこの形式を使用するにはどうすればよいですか? AMFPHPを使用するよう教えてくれる人もいると思いますが、私のクライアントは望みたくないので、私はできません。

答えて

0

このような何か:

var appheader:URLRequestHeader = new URLRequestHeader("Content-type", "application/octet-stream"); 
var urlRequest:URLRequest = new URLRequest(URL + "?p=" + SelectedCountry + "&action=check&nocache=" + Math.floor(Math.random() * (10000000))); 

urlRequest.requestHeaders.push(appheader); 
urlRequest.method = URLRequestMethod.POST; 

var urlloader:URLLoader = new URLLoader(urlRequest); 
urlloader.addEventListener(Event.COMPLETE, onUploadComplete); 
urlloader.dataFormat = URLLoaderDataFormat.VARIABLES; 
urlloader.load(urlRequest); 

urlloader.addEventListener(IOErrorEvent.IO_ERROR, handleGetSessionIOError); 
} 



function handleGetSessionIOError(e:IOErrorEvent):void { 
trace("handleGetSessionIOError "+e); 

} 



function onUploadComplete(e:Event):void { 
trace("uploaded to server."+e.target.data); 

} 
+0

OKが、どのようにmultivars PHPの結果を使用するには? –

0

あなたがcrooksyのポストにこれを追加することができます。

function onUploadComplete(e:Event) 
{ 
    var phpvars:URLVariables = new URLVariables(event.target.data); 

    trace(phpvars.res,phpvars.hisCountry); 
}