クッキーを使うスクリプトです。 
フォームに適当な値を入れて試してください。
  
よくわからない人は、クッキーを書き込んでいったんブラウザを
終了させ、もう一度サンプルページを見てください。 
先ほど書き込んだデータが有効なのがわかります。 
日本語も扱えます。
  
・サンプルを見る 
・ソースを保存する (右クリック→「対象をファイルに保存」or「リンクを名前を付けて保存」して下さい。) 
・ソースを見る ・解説を見る 
 
 
 
  
[ ソース ]
<html><head>
<script language="JavaScript">
<!--//Copyright (C) WEST MiRa http://www.west-mira.jp
	kikan=90;
	my_name="1";
	my_datas=new Array();
	my_datas2=new Array();
	my_name="WEST_MiRaCookie"+my_name;
	function DataRead()
		{
		if(document.cookie.length>0 && document.cookie.indexOf(my_name)!=-1)
			{
			my_datas=document.cookie.split("; ");
			for(i=0; i<my_datas.length; i++)
				{if(my_datas[i].indexOf(my_name)!=-1)break;}
			my_datas2=my_datas[i].split("=");
			my_datas2[1]=unescape(my_datas2[1]);
			}
		return my_datas2[1];
		}
	function DataWrite(datas)
		{
		jikann=new Date();
		ima=new Date(jikann.getTime()+(kikan*24*60*60*1000));
		datas=escape(datas);
		document.cookie=my_name+"="+datas+";expires="+ima.toGMTString();
		return;
		}
//-->
</script>
</head>
<body>
 ・
 ・
 ・
</body></html>
 
  
[ 解説 ]
  
上から5行目の 
kikan=90; 
に、クッキーの有効期限を書いて下さい。
  
有効期限は日数をお書き下さい。 
例えば 
3日なら「kikan=3;」 
1ヶ月ならば「kikan=30;」 
と言うようにお書き下さい。
  
もしこのスクリプトを複数のページで使う場合は、
必ず上から6行目の「my_name="1";」に、クッキーの名前をご記入下さい。 
1つのページでしか使わないなら、変更せずにそのまま利用して大丈夫です。
  
この際、名前が他のページで使用している名前と重複しないようご注意下さい。 
また、名前は3文字程度の短いものにしましょう。
  
例えば「1.html」でクッキーを使い、「2.html」でもクッキーを使っている場合。 
「1.html」で「my_name="1";」と指定した場合は、
「2.html」で「my_name="2";」とのように、名前を変更してください。
  
利用方法は、クッキーを書き込む際は 
DataWrite(CookieData); 
と言うようにしてください。
  
変数CookieData内に、クッキーに書き込む内容を代入してください。
  
反対にクッキーを読み込む時は、 
CookieData=DataRead(); 
のようにして下さい。
  
この時読み込まれたクッキーの内容は、変数CookieDataに代入されています。
  
[ 数値データについて ]
  
数値データをクッキーに覚えさせて利用する場合は、注意が必要です。
  
クッキーから取り出されたデータは文字列として認識されている為、
数値として扱うためにはまずevalしてやって下さい。
  
例 
CookieData=DataRead(); 
CookieData=eval(CookieData);
  
このようにすれば、数値として認識されます。
  
[ 複数データについて ]
  
複数のデータをクッキーに書き込みたい時も、利用するクッキーは一つにしてください。
  
1つのサイトで幾つもクッキーを書き込むのはユーザーの迷惑です。
  
で、実際にどうするかと言うと、複数データを、間に適当な区切り文字を挟んで一つの変数に連結してやります。
  
その変数をクッキーに書き込めば、一つのクッキーで用が足ります。
  
読み込んで分割して利用する時は、
  
SplitData=new Array(); 
SplitData=CookieData.split("区切り文字");
  
とすれば、配列SplitData内に区切り文字を 
パターンとして文字列が分割されて入ります。 		
				
				 |