- ベストアンサー
フラッシュはjpgやtxt以外も読み込める?
ずばりフラッシュはhtmlやPHP、変数や関数 PHPの変数をフラッシュに送ったり出来ますか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
ずばり フラッシュはhtml(テキスト)やPHP(テキスト)、変数(テキスト)や関数(テキスト) PHPの変数(テキスト)をフラッシュに送ったり出来るでしょう。 それどころか, JPEG(バイナリ),PNG(バイナリ),BMP(バイナリ),EXE(バイナリ),DLL(バイナリ)なども送れるでしょう。 しかし! ずばり 勝手にファイルを送っても Flash Player 側が表示や実行をしなければ,何の意味もないでしょう。 (丸尾君かい!?) 表示や実行をさせるためには2つの条件が必要です。 1 Flash Player に JPEGならJPEGファイルとして表示できる機能があること。 2 SWF ファイル内に表示させるための器を用意しておくこと。 単にデータを送っただけでは普通は両方ともの条件が成立していないので, 何の意味もなくなります。無反応無表示です。 ◎ Flash Player が各ファイルとして取り扱えるもの ・ SWF ・ JPEG ・ GIF(静止) ・ PNG 以上は送信というより,Flash 側から,loadMovieメソッドもしくは MovieClipLoaderクラスのメソッドでロードできます。 「loadMovie (MovieClip.loadMovie メソッド)」 http://livedocs.macromedia.com/flash/8_jp/main/00002479.html ・TXT 以上も送信というより,Flash 側から,loadVariablesメソッドもしくは LadVarsクラスのメソッドでロードできます。 「loadVariables (MovieClip.loadVariables メソッド)」 http://livedocs.macromedia.com/flash/8_jp/main/00002480.html また,「○○.swf?AAA=abc123」のようにSWFファイルにアクセスすると, SWF内に 変数AAAとその値"abc123""abc123" が送信&表示されます。 しかし,送信されたからと言って,Flash内にその "abc123" を表示する仕組みを作って置かなければ, そのFlashは無反応です。 ・XML これは,データ自体はテキストですよね。 だからロード自体は簡単にできます。 ただし,XMLをXMLとして存在させ,表示させるには,それなりのスクリプトが必要です。 「load (XML.load メソッド)」 http://livedocs.macromedia.com/flash/8_jp/main/00002871.html ・HTML これも,データ自体はテキストですよね。 だからロード自体は簡単にできます。 しかし,普通のHTMLをFlash内に表示させるには,タグの認識が不十分です 「*TextFieldのHTMLで遊ぶ」 http://hima.chu.jp/flash/tips/textfield_html.htm ・その他CSVなどテキストベースのデータ これも,データ自体はテキストです。 だからロード自体は簡単にできます。 しかし,Flash は CSVだとは思っていません。単なるテキストだと思っていますから, ロードしたCSVを自分で切り貼りするプログラムを作成して,データをつかわなければなりません。 >> PHP、変数や関数 >> PHPの変数をフラッシュに送ったり出来ますか? 単なる a=123 というような変数とその値は, PHP側から送信できますし,Flash側からロードもできます。 ただ関数は,当然,単なるテキストとしてしか送れません。 たとえば -------------------------- <?php echo date("Y/m/d(D) H:i:s")."<br>\n"; ?> -------------------------- というデータをFlashに送信しても, 決してFlashには 2006/05/22(Mon) 20:10:17 とは表示しません。 うまく表示する仕組みを作ったとして,せいぜい, <?php echo date("Y/m/d(D) H:i:s")."<br>\n"; ?> と表示されるだけです。 EXEもしかり,DLLもしかり…です。 Flash は PHP と違い, クライアントサイドのコンテンツであると同時に,SWFはコンパイルされて作成されるデータです。 echo date はコンパイルされていないので, 当然,プログラムとしては動作しませんし, また,仮にコンパイルしたとしても, echo date なんて関数自体,Flash には存在しないので,コンパイルエラーになるか, コンパイルされても,何もしない文字列データとして扱われるだけです。 当たり前ですが,Flash は ActionScript でないと言語としては受け付けません。 ActionScript が PHP に通用しないのと同様です。 好き勝手な言語で書かれても何にも動きません。 こんな感じですかね。 実際に使って実験しないと何をどうすればどうなるのかはわからないと思います。 具体的問題に遭遇しないと書くこともできませんし PHPとFlashの連携についてはあまり詳しくありませんので, ごく一般的なことだけですが,この辺で…。 「Macromedia Flash MX と PHP」 http://www.adobe.com/jp/devnet/flash/articles/flashmx_php.html ・その他 http://www.google.com/search?hl=ja&q=PHP+LoadVars+sendAndLoad&lr=lang_ja
その他の回答 (1)
- suzuko
- ベストアンサー率38% (1112/2922)
出来ますよ。^^
お礼
具体的なお話が聞けてとてもすっきりしました。 変数は送受信できるけどその後の仕組みなどがひつようなわけですね。XMLも。 リンク先全部まだ見れていませんが参考にさせていただきます。 貴重なお時間を回答に割いていただきありがとうございました。