クッキーを使うスクリプトです。
ユーザーの名前を入力してもらって、挨拶文と一緒に名前も表示します。
1度入力してもらえば、次回からは名前の入力は必要ありません。
・サンプルを見る
・ソースを保存する (右クリック→「対象をファイルに保存」or「リンクを名前を付けて保存」して下さい。)
・ソースを見る ・解説を見る
[ ソース ]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<script language="JavaScript">
<!--//Copyright (C) WEST MiRa http://www.west-mira.jp
//クッキーの保存日数を指定する
//3なら日間、5なら5日間
kikan=3;
//名前の後に表示する文章を指定する
bunn='さん、こんにちは';
//名前が見入力の場合に表示する名前の代わりの文字
not_name='名無し';
//クッキーで使用する名称部分
my_name="na1";
my_datas=new Array();
my_datas2=new Array();
my_name="WEST_MiRaCookie"+my_name;
CookieData="";
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;
}
function NameInput()
{
CookieData=DataRead();
if(CookieData == "" || CookieData == null)
CookieData=prompt("貴方のお名前を入力して下さい。","");
if(CookieData != "" && CookieData != null)
{
DataWrite(CookieData);
document.form1.text1.value=CookieData;
}
else document.form1.text1.value=not_name;
document.form1.text1.value+=bunn;
}
//-->
</script>
</head>
<body onLoad="NameInput();">
<form name="form1">
<input type="text" size="60" name="text1"><br>
</form>
・
・
・
</body></html>
[ 解説 ]
上から7行目の
kikan=90;
に、クッキーの有効期限を書いて下さい。
有効期限は日数をお書き下さい。
例えば
3日なら「kikan=3;」
1ヶ月ならば「kikan=30;」
と言うようにお書き下さい。
もしこのスクリプトを複数のページで使う場合は、
必ず上から8行目の「my_name="na1";」に、クッキーの名前をご記入下さい。
1つのページでしか使わないなら、変更せずにそのまま利用して大丈夫です。
この際、名前が他のページで使用している名前と重複しないようご注意下さい。
また、名前は3文字程度の短いものにしましょう。
例えば「1.html」でクッキーを使い、「2.html」でもクッキーを使っている場合。
「1.html」で「my_name="na1";」と指定した場合は、
「2.html」で「my_name="na2";」のように、名前を変更してください。
次に、上から8行目の「さん、こんにちは」に、名前の後ろに表示する文字をお書き下さい。
上から9行目の「名無し」には、名前を入力してもらえなかった際に表示する、仮称をお書き下さい。
フォームのサイズを変更する際は、HTML内のテキストボックスタグにある「size="60"」をご変更下さい。
|