アプリ版:「スタンプのみでお礼する」機能のリリースについて

phpからas3へ配列の渡し方を教えてください。

ActioScript3.0からphpへ変数を渡し、phpでsqlによって得たデータを配列に格納し、その配列をas3へ渡そうと思っています。

変数だと以下記述で実現できましたが、もしsqlが複数件取得した際には対応できていません。

■php側からas3へ変数を渡す箇所
echo "comp=".$teamname;

■as3側の受け取り箇所
function getTeamInfo(event:Event):void {
var team_info:URLVariables=new URLVariables(event.target.data);
st_team=team_info.comp;
}

以上、よろしくお願いします。

A 回答 (3件)

こんにちは。



そもそもPHPから送る場合、一度HTMLを通りますよね?
直接渡すっていう事ですか???

echoしてる時点で、直接ではないように思いますが・・・。
具体的にどうやって渡してますか?

この回答への補足

ご回答ありがとうございます。
htmlは通ってなく、as3から直接phpを呼び出しています。

>echoしてる時点で、直接ではないように思いますが・・・。
echoはhtmlに出力するためのものなんでしょうか?
すいません、ネットでこのように表記されてたのを引用したものなので・・・

as3→php→as3で、一度もhtmlで表示する必要はありません。
単純にas3からデータベースにsqlを発行して結果をas3上の配列に格納できることが狙いです。

phpからas3に配列の渡し方が他に(echoを使わずに?)あれば、教えていただけませんでしょうか?

補足日時:2010/08/01 15:51
    • good
    • 0

こんにちは。



意味がわかりました・・・。
PHP側でechoするときに、区切り文字形式の文字列として渡すしかないようですね・・・。
AS3側ではそれを配列に詰め直す作業が必要です。
AS3なので、JSON形式で渡せば楽です。
PHPにもJSON形式に変換してくれるライブラリがあったような・・・。

この回答への補足

なるほど、ひとつの変数の中に後でAS3側で識別できるようにして渡すんですね。
その際、PHP側でsqlの取得結果をループさせて、間にスペースで区切る、と認識してますが
正しいですか?

なお、今のsql取得結果を変数へ格納しているのは以下記述のとおりです。

$result = mysql_query($sql, $link) or die("クエリの送信に失敗しました。<br />SQL:".$sql);
while ($result_row = mysql_fetch_row(($result))){
$teamname=$result_row[0];
}

補足日時:2010/08/01 17:49
    • good
    • 0

こんばんは。



>その際、PHP側でsqlの取得結果をループさせて、
>間にスペースで区切る、と認識してますが
>正しいですか?
区切り文字は何でもいいですが、JSON形式の方が楽だと思います。
それ以外なら、AS側でゴリゴリやらないといけないので・・・。
ちなみに「as3corelib」を使います。
区切り形式は、そちらを見てもらえればすぐにわかると思います。
key:valueや、key:[{name1:value1,name2:value2}]などは使う側に依存するので、使いやすい方でやってみてください。
    • good
    • 0
この回答へのお礼

ありがとうございます。
おかげさまで解決いたしました。

お礼日時:2010/08/04 14:03

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!