FLASH1→PHP→FLASH2 POST送信での受け取り方法。
FLASH 8の初心者です。
Sample.swfにあるボタンから、PHPを通してSample2.swfに値を送ろうとしています。そこで、送った値を判定して、そのフレームに移動するようにしたいと思っています。
現在はFLASH→PHP→FLASHというのはできるのですが、FLASH1→PHP→FLASH2という方法がわかりません。
■Sample.swfのボタン
A.onPress = function() {
SendData = new LoadVars(); //データを送信するための箱。
_root.SendData.nakami1 = "sam"; //送りたいデータを箱に詰める
//データ(中身)を詰めた箱をgetFlash.phpに送信
_root.SendData.sendAndLoad("http://localhost/Sample/Sample.php", _root.SendData);
//3)getFlashからレスポンスが合った場合(SendDataにデータが帰ってきた時)
_root.SendData.onLoad = function() {
//受け取ったときの処理
if(this.val){
if(this.val1){
gotoAndPlay(2);
}
}
}
}
これで、PHPに値を送っています。
<?php
//2)Flashからデータを受け取る-Flashで使用した変数名
$test1 = $_POST["nakami1"];
//やりたい処理を書く
if($test1 == "sam"){
$test1 = "name";
}else{
$test1 = "error";
}
//Flashにデータを送る
print "&val=true"; //上の結果を表示の実行。
print "&val1=".$test1; //val1に$test1の値を代入。
?>
この書き方でFLASH→PHP→FLASHはできるのですが、これをどのように変更したらFLASH2へ値を送れるのかわかりません。調べてもどのようにすればいいのかわからないので困っています。
FLASH2のほうではsetInterval文を使って、常にPHPからの送られてくる値を取得しようと思っています。
★setInterval文
functionvar intervalID:Number=setInterval(getFunc,1000);
getFunc(){
getURL("http://localhost/test/Sample.php", "_self", "GET");
if(val== "name"){
gotoAndpPay(2);
}
}
このように書いたのですがどのようにすればPHPからの値を取得できるのかわかりません。このような書き方をしなくてもできるのでしょうか?
どんなことでもいいので返事をよろしくお願いします・・・。
お礼
ご回答ありがとうございます! 非常に助かります。 ふ~む、なるほど。 インスタンス名 = 変数 ということになるんですね! これを参考にいろいろ調べてみます。 本当にありがとうございました。