- 締切済み
LoadVarsでPHPから変数を読み込む件について
質問させていただきます。 PHPで、変数$usernameに入っている値をActionScriptに渡したいのですが、上手くいきません。 ■PHP側 echo "name=".$username; ■ActionScript側 var username: LoadVars = new LoadVars(); username.onData = function(src) { if (src == undefined) { trace("Error loading content."); } trace(src); }; username.load("./view.php"); trace(username.name); 試しに上記のような形で実行してみました。 onDataの中の「trace(src)」の出力によると、PHPを読み込んではいるのですが、echoの部分だけではなく、<?php ~ ?>のように、PHP全体を読み込んでしまっていることがわかりました。(しかも何故か1行ずつ行間を空けた状態で…) ちなみに一番最後の「trace(username.name)」は何も出力されませんでした。 Webで調べると、例えばPHP側で「echo "name=admin";」のように、直接値を表示しているものばかりのような気がしました。 私のような場合、欲しい部分だけをloadするにはどうすればよいでしょうか。どうぞご教示願います。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- wynnjp
- ベストアンサー率71% (5/7)
テキストでとれているということは、ローカル環境でテストされているのでしょうか? だとすると、Flashは「http://~」のアドレスで呼び出していますか? もし、Flashをファイルとして呼び出しているのであれば、./view.phpもhttpのリクエストではなくファイルとして取得しにいくことになります。 IISにしてもApacheにしても、Webサーバーにはログを残す機能があると思いますので、phpの呼び出しログが存在するか確認すれば答えが見つかると思います。
- wynnjp
- ベストアンサー率71% (5/7)
PHPを実行できない環境でテストしていないでしょうか? 通常であれば、loadVarsはブラウザーを介して指定のURLから情報を取得するのでソースを取得することはできません(できてしまうと、セキュリティ上PHPのソースに重要な情報を何も書けなくなってしまいます) PHPさえ実行されれば、上記サンプルでは「trace(_root.name)」で値を取得できると思います。
お礼
解答ありがとうございます。お返事が遅れて申し訳ありません。 一応PHPが動作する環境でテストしております。 しかし、質問に書いたとおり何故かソース全体が来てしまうんですよね。 まるでテキスト形式のファイルを呼んでるような感じなのです。 もしかして、ActionScript側からPHPだと認識されてないのでしょうか。そんなことはないですよね…何故でしょうね…