トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     SharedObjectで保存した値を別のswfで読む
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
Hamagon
Åê¹ÆNo.9868
投稿日時: 2004-8-16 1:41
新米
居住地:
投稿: 25
使用環境:
自作PC Athron1.3Ghz + 512M
WindowsXP
Flash MX
Flash Mx2004proffesional
SharedObjectで保存した値を別のswfで読む
A.swf実行時にSharedObjectで保存した値を、B.swfを使って読み込もうとしても、読み込めませんでした。
スクリプトは

hiScore = SharedObject.getLocal("Game1Hiscore");
score = hiScore.data.maxScore1;

という感じで、A.swfで実行すると値は正しく受け取れ、B.swfで実行すると「undefined」になってしまいました。

A.swfで保存したものをB.swfで読み込むことはできないのでしょうか?
空野大二郎
Åê¹ÆNo.9871
投稿日時: 2004-8-16 3:40
職人
居住地: 愛知
投稿: 389
使用環境:
 XP:Home
FlashMX
IE6.0+FlashPlayer7,0,19
CPU:Pentium4 2.26GHz
メモリ:1,024MB
Re: SharedObjectで保存した値を別のswfで読む
まいど。

ローカル環境のみでは読み込むことは出来ません。
引用:
Hamagonさんは書きました:
A.swfで保存したものをB.swfで読み込むことはできないのでしょうか?



SharedObjectのローカル保存は、利用中のコンピューター、サブドメインにあるディスクスペースに格納されております。
(ファイル拡張子:「.sol」、隠しファイルになっている)
A.swfとB.swfそれぞれにsharedobjectを利用して検索をかければ分かるでしょうが、同じオブジェクトを保存しても場所は全く異なります。

保存した値を別の.swfファイルで読み込むには、CGIなどのスクリプトを利用するか、cookieの利用が考えられます。


----------------
空野 大二郎 アニメーター作家
桜の道

SAT☆
Åê¹ÆNo.9874
投稿日時: 2004-8-16 10:10
新米
居住地: 杜の都
投稿: 11
使用環境:
MacOSX 10.4 / Flash8 / firefox1.5
Re: SharedObjectで保存した値を別のswfで読む
引用:

A.swf実行時にSharedObjectで保存した値を、B.swfを使って読み込もうとしても、読み込めませんでした。


同一サイト内なら階層を指定することで、複数のswfから同一の共有オブジェクトが取得できます。
階層は二番目の引数として指定します。

SharedObject.getLocal("Game1Hiscore","/");

上記のようにするとサイトルートに有る同一の共有オブジェクトを参照することができます。

尚、SharedObject自体は完璧な物ではありませんので、空野大二郎さんの言うように、他の技術を使うことも考える必要があると思います。


----------------
Kazuhiko "Honey" Sat☆
HQ9+

空野大二郎
Åê¹ÆNo.9877
投稿日時: 2004-8-16 13:48
職人
居住地: 愛知
投稿: 389
使用環境:
 XP:Home
FlashMX
IE6.0+FlashPlayer7,0,19
CPU:Pentium4 2.26GHz
メモリ:1,024MB
Re: SharedObjectで保存した値を別のswfで読む
できました。
引用:

Kazuhiko Satoさんは書きました:
同一サイト内なら階層を指定することで、複数のswfから同一の共有オブジェクトが取得できます。
階層は二番目の引数として指定します。

SharedObject.getLocal("Game1Hiscore","/");


間違ったことを言って、すみませんでした。

同一サイト内でしか共有できない制約がありますが、諸設定を保存したまま別のページからオブジェクトを共有できるのは、使い道がありますね。


----------------
空野 大二郎 アニメーター作家
桜の道

Hamagon
Åê¹ÆNo.9905
投稿日時: 2004-8-17 9:04
新米
居住地:
投稿: 25
使用環境:
自作PC Athron1.3Ghz + 512M
WindowsXP
Flash MX
Flash Mx2004proffesional
Re: SharedObjectで保存した値を別のswfで読む

空野様、佐藤様レスありがとうございます。

階層を指定する方法、試してみます。

Hamagon
Åê¹ÆNo.9941
投稿日時: 2004-8-18 2:04
新米
居住地:
投稿: 25
使用環境:
自作PC Athron1.3Ghz + 512M
WindowsXP
Flash MX
Flash Mx2004proffesional
Re: SharedObjectで保存した値を別のswfで読む
実際に試してみました…が、結果的にデータ読むことは出来ませんでした。

「同一サイトの同一階層」というのは、「同一マシンの同一フォルダ」とは違う、ということでしょうか?

hiScore = SharedObject.getLocal("game1Hiscore","/testFolder");

のようにフォルダを指定すると、いままでデータを記録できていた「a.swf」もデータが記録できなくなりました。

パスの指定方法が間違っているのでしょうか?
野中文雄
Åê¹ÆNo.9942
投稿日時: 2004-8-18 3:05
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: SharedObjectで保存した値を別のswfで読む
「同一マシンの同一フォルダ」といっても、差支えはないと思います。
引用:
Hamagonさんは書きました:
「同一サイトの同一階層」というのは、「同一マシンの同一フォルダ」とは違う、ということでしょうか?

SWF/HTMLファイルは、指定したローカルパスの下にあるのでしょうか?
引用:
hiScore = SharedObject.getLocal("game1Hiscore","/testFolder");

のようにフォルダを指定すると、いままでデータを記録できていた「a.swf」もデータが記録できなくなりました。


----------------
 

Hamagon
Åê¹ÆNo.9959
投稿日時: 2004-8-19 8:53
新米
居住地:
投稿: 25
使用環境:
自作PC Athron1.3Ghz + 512M
WindowsXP
Flash MX
Flash Mx2004proffesional
Re: SharedObjectで保存した値を別のswfで読む
レス下さった皆様、ありがとうございました。
読み込みできました。
野中さんのレス中にあるリンク先には「ローカルパス」の定義がわかりやすくかかれており、とても参考になりました。

>2つのムービーから同じSharedObjectに
>アクセスする必要があるときには
>両方のムービーが使用できる[ローカルパス]を指定します。

ここを勘違いしていました。
2つのswfをまったく別のフォルダにおいていました。

a.swf、b.swfの両方を「testdata」フォルダにおき、
hiScore = SharedObject.getLocal("game1Hiscore","/testdata");
と書いたところ、両方から読み込めました。

ありがとうございました。

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops