loadVariablesNum 関数

loadVariablesNum(url:String, level:Number, [method:String]) : Void

テキストファイルや、ColdFusion、CGI スクリプト、ASP、PHP、または Perl スクリプトで作成されたテキストなどの外部ファイルからデータを読み取り、Flash Player の特定のレベルの変数に値を設定します。この関数を使用して、現在の SWF ファイルの変数を新しい値で更新することもできます。

指定された URL にあるテキストは、標準の MIME 形式 application/x-www-form-urlencoded (CGI スクリプトで使用される標準形式) になっている必要があります。変数はいくつでも指定できます。たとえば、次の例では複数の変数が定義されています。

company=Adobe&address=601+Townsend&city=San+Francisco&zip=94103

Flash Player 7 より前のバージョンの Player で SWF ファイルを実行している場合、 url は、呼び出し元の SWF ファイルと同じスーパードメインに属している必要があります。スーパードメインは、ファイルの URL の左端の要素を削除することで求められます。たとえば、www.someDomain.com に存在する SWF ファイルは、store.someDomain.com に存在するソースからデータをロードできます。これは、どちらのファイルも同じスーパードメイン someDomain.com に属しているからです。

Flash Player 7 以降のバージョンで動作する SWF ファイルでは、url は呼び出し元の SWF ファイルと完全に同じドメインに属している必要があります (『ActionScript 2.0 の学習』の「Flash Player のセキュリティ機能」を参照)。たとえば www.someDomain.com に置かれている SWF ファイルは、www.someDomain.com に置かれているソースからのみデータをロードできます。異なるドメインからデータをロードするには、SWF ファイルをホストするサーバーにクロスドメインポリシーファイル を配置できます。詳細については、『ActionScript 2.0 の学習』の「ドメイン間のデータロード許可について」を参照してください。

変数をターゲットムービークリップにロードするには、loadVariablesNum() の代わりに loadVariables() を使います。

対応バージョン : ActionScript 1.0、Flash Player 4 - Flash Player 7 ではビヘイビアが変更されました。Flash 5 以降で開いた Flash 4 ファイルは、正しいシンタックスを使用するように変換されます。

パラメータ

url:String - 変数が存在する絶対 URL または相対 URL。呼び出し元の SWF ファイルが Web ブラウザで実行されている場合、url は SWF ファイルと同じドメインに属している必要があります。詳細については、「説明」を参照してください。

level:Number - 変数を受け取る Flash Player のレベルを指定する整数。

method:String (オプション) - 変数を送信するための HTTP メソッドを指定します。パラメータはストリング GET または POST でなければなりません。送る変数がない場合は、このパラメータを省略します。GET メソッドは、変数を URL の最後に追加します。このメソッドは、変数のデータ量が少ないときに使用します。POST メソッドは、別の HTTP ヘッダで変数を送信します。このメソッドは、変数のデータ量が多いときに使用します。

次の例では、テキストファイル params.txt の情報を、Flash Player のレベル 2 にある SWF ファイルのメインタイムラインにロードします。テキストフィールドの変数名は、params.txt ファイルで宣言されている変数名と同じでなければなりません。setInterval() 関数は、SWF へのデータのロードの進行状況をチェックする場合に使用します。このスクリプトは、params.txt ファイル内の done という名前の変数をチェックします。

loadVariablesNum("params.txt", 2);
function checkParamsLoaded() {
 if (_level2.done == undefined) {
 trace("not yet.");
 } else {
 trace("finished loading. killing interval.");
 trace("-------------");
 for (i in _level2) {
 trace(i+": "+_level2[i]);
 }
 trace("-------------");
 clearInterval(param_interval);
 }
}
var param_interval:Number = setInterval(checkParamsLoaded, 100);

// Params.txt includes the following text
var1="hello"&var2="goodbye"&done="done"

関連項目

getURL 関数, loadMovie 関数, loadMovieNum 関数, loadVariables 関数, loadMovie (MovieClip.loadMovie メソッド), loadVariables (MovieClip.loadVariables メソッド), load (LoadVars.load メソッド)


 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00001192.html