2011-07-24 3 views
0

私はPHPからフラッシュにデータを取得し、動的テキストフィールドに出力しようとしています。私はこれが愚かな質問かもしれないことは知っているが、私はどのようにコードを処理するフラッシュを得るために働くように思えないtext_field.text = data.return_msg;イベントリスナーは必要ありません。イベントリスナーを追加せずにフラッシュas3のコードを処理する方法(フラッシュが見つかるとすぐに)

私はコードが基本的にそれを発見するとすぐにコードを処理したいです。

var variables:URLVariables = new URLVariables("get_blog_info.php"); 


// Build the varLoader variable 
var varLoader:URLLoader = new URLLoader; 
varLoader.dataFormat = URLLoaderDataFormat.VARIABLES; 


trace(varLoader); 


var data:URLVariables = new URLVariables(event.target.data); 
title_txt.text = data.return_msg; 
} 

と私はこのエラーを取得:

これは私が現時点で持っているものである

「1120:未定義のプロパティのイベントのアクセス」

私はその基本的な質問を知っていますが、私はフラッシュするのが新しいので、どんな助けでも大歓迎です。

おかげ

答えて

0

:あなたはそれがテキストを表示するための要求から戻った情報を受信するまで待つ必要があります。それでは、イベントオブジェクトとデータが設定されたデータプロパティがあります。私はあなたがその目的を誤解していると考えているように私が意図的にURLVariablesの使用を無視してきた

var loader:URLLoader = new URLLoader(); 
loader.addEventListener(Event.COMPLETE,onLoaded); 
loader.load(new URLRequest("get_blog_info.php")); 

function onLoaded(evt:Event):void 
{ 
    loader.removeEventListener(Event.COMPLETE,onLoaded); // recomended, to prevent memory leaks. if you will not be using this loader again. 
    title_txt.text = evt.target.data; 
} 

:あなたはこのような何かをやっている必要があります。 URLVariablesのインスタンスを、名前/値のペアの文字列で作成します。これは、PHPスクリプトに送信される変数です。リクエストに変数を使用しているようではないので、無視しました。

+0

ねえ。ちょうどあなたが提案したコードを試しました。何も表示されていないので、データを返すようではありません。ありがとう。 –

+0

PHPスクリプトをブラウザでテストして、期待どおりに出力されていることを確認しましたか? – shanethehat

+0

はい、あります。ちょうどもう一度チェックを済ませた。すべてがPHPで正常に動作しています。私はiveが削除しようとしたファイルを含んでいますが、フラッシュからはまだ何もありませんので、PHPからの問題ではないと確信しています。 –

1

documentationは、あなたが探しているものを行うための唯一の方法を示しています。あなたが実際にそれはPHPからの応答を受信したときに検出するためにあなたのローダーに耳を傾ける必要がある

// notice: you want to have a request which points to the URL, not the variables. 
var urlRequest:URLRequest = new URLRequest("get_blog_info.php"); 
var urlLoader:URLLoader = new URLLoader(); 
// it looks like you just want a string returned. 
urlLoader.dataFormat = URLLoaderDataFormat.TEXT; 
urlLoader.addEventListener(Event.COMPLETE, urlLoader_complete); 
urlLoader.load(urlRequest); 

function urlLoader_complete(evt:Event):void { 
    title_txt.text = urlLoader.data; 
} 
+0

ちょっと、あなたのコードを試してみました。表示されるように見えるのはすべて "<?"テキストフィールドに入力します。また、.flaファイルのテキストフィールドにも表示されるので、 "<?" PHPから来ていません。ありがとう。 –

2

WebリクエストはFlashでのみ非同期です。ロードが完了したときに通知されるイベントリスナーを追加することはできますが、その時点でデータにアクセスできます。

関連する問題