Flashクッキーとも呼ばれるローカル共有オブジェクトを使用して、何度目の閲覧かを表示します。
ローカル共有オブジェクトを使用するとハードディスク上に変数を保存できる。
Adobe Flash 8 Professionalを使用してサンプルを作成しています。

ローカルPC上に変数を保存することが出来る「SharedObject」

レイヤーは3つ
1. ここからサンプルのFlashをここからダウンロードしてください。真赤な背景の上、中央にダイナミックテキストボックスが配置されています。この中にActionscriptを使用してテキストを表示していきます。

2. レイヤー「action」の1フレーム目に以下のActionscriptを記述してください。
myShared = SharedObject.getLocal("FlashGuide");

if(myShared.data.myTime != undefined){
		myShared.data.myTime += 1;
	}else{
		myShared.data.myTime = 1;
}
myText.htmlText = "<b>いらっしゃいませ!<br><br>" + myShared.data.myTime + "回目のご来店です。</b>";
//myShared.clear();
少しずつ見ていきます。

1行目は「myShared = SharedObject.getLocal("FlashGuide");」でローカル共有オブジェクト「myShared」を生成している行です。ここでは「オブジェクト名 = SharedObject.getLocal("ファイル名")」と記述しており、このFlashを再生したパソコンに「FlashGuide.sol」というファイルが保存されます。ローカル共有オブジェクトはこのファイルを参照することで、ブラウザを閉じた場合でも再び同じパソコンで閲覧した場合にこのデータを呼び出すことが出来るという仕組みです。

2行目からのif文はオブジェクト「myShared」に書き込みを行っています。ここでは閲覧回数を取得したいので、まず2行目で閲覧回数を管理する変数「myShared.data.myTime」の内容があるかないかを判定し、既にデータがある場合には閲覧回数を「+1」し、データがない場合は初めてということで「1」を代入しています。

下から2行目では、ダイナミックテキストボックス「myText」にテキストと閲覧回数を入力しています。ここではHTMLを使用して太字にし、その間に閲覧回数を表示させることにしています。リロードを行うことでデータが保存され、次回以降は閲覧回数がカウントアップしていきます。

最後の行はコメントアウトされています。ここまで作成したローカル共有オブジェクトを消去したい場合、この行を利用します。



これで完成です!
完成したファイルをダウンロード


今回ご紹介したローカル共有オブジェクトは、Windows Vistaの場合「C:Usersユーザ名AppDataRoamingMacromediaFlash Player#SharedObjects」に保存されています。このフォルダを開くと様々なサイトでローカル共有オブジェクトを気付かないうちに使用されていたことに気付かされます。

今回のようにシンプルな閲覧回数だけではなく、例えば音声を利用しているサイトではボリュームやミュートといった機能を記録してたり、Flashで作られるECサイト等では簡易クッキーとしても利用されています。

個人情報を扱うなどミッションクリティカルな使用はお勧め出来ませんが、ちょっとした気遣いにこうした機能を利用するとより使いやすくストレスのないFlashサイトに近づけると思います。

※記事内容は執筆時点のものです。最新の内容をご確認ください。
※OSやアプリ、ソフトのバージョンによっては画面表示、操作方法が異なる可能性があります。