1. JavaScriptで日付(年)を自動更新する方法
まず、HTMLのhead要素内(<head>~</head>)に、次の6行を記述しておきます。
※head要素に書けない場合は、body要素内でも構いません。
function ShowNowYear() {
var now = new Date();
var year = now.getFullYear();
document.write(year);
}
</script>
上記のコードで、現在の年を表示する関数「ShowNowYear」を作っています。
3行目で現在の日付を取得し、4行目で年だけを取り出しています。そして、5行目で表示させています。
ここでは、ただ「年を表示する関数」を作っただけなので、まだ何も表示されません。HTML中で、実際に年を表示させたい箇所に、以下のように記述します。
ShowNowYear();
</script>
この記述で、先ほど作成した「ShowNowYear関数」を呼び出すことができます。 つまり、このHTMLを記述した箇所に「年」が表示されます。
上記のように記述すると、次のように表示されます。
現在の年が表示されていることだと思います。
この記述は、同一ページ内に何度でも書けます。
以下のようにHTMLを記述しておけば、年が自動更新されるCopyright表記になります。
<script type="text/javascript">
ShowNowYear();
</script>
MyName. All Rights Reserved.
これを表示すると、次のように表示されます。
年表記は、閲覧者がアクセスした日付の年が自動的に使われます。
<注意>
※JavaScriptはブラウザが実行するため、閲覧者のパソコンの日付設定の通りに表示されます。 ですから、もし、閲覧者のパソコンの日付が2000年になっていれば、現実の日付に関係なく「2000」と表示されてしまいます。
※JavaScriptが無効に設定されているブラウザ上では、年は表示されません。
2. CGI+SSIで日付(年)を自動更新する方法
CGI+SSIを使えば、JavaScriptにあるデメリットが解消できます。
サーバの日付が使われるため、閲覧者のパソコンの日付設定が誤っていても、正しく現在の年を表示できます。 また、閲覧環境に依存しないため、どんなブラウザを使っていても、正しく表示できます。 さらに、HTMLソースを読まれても、自動更新させている事実には気づかれません。
それでは、CGIとSSIを使って日付を自動更新させる方法を見てみましょう。