訪問者のブラウザが JavaScript と Cookie をサポートしているかどうかを確認します。
たとえば、クライアント側の JavaScript を使用してデータの有効性を確認するため、クライアントのブラウザでセッション変数を使用して JavaScript を有効にする必要があります。 ID などの情報を取得するには、ブラウザの Cookie を有効にする必要があります。したがって、これらのオプションがユーザーのブラウザでオンになっていることを確認する必要があります。私の Web サイトでは、一連の簡潔なコードを使用してこれらの機能を実装し、ユーザーがいつログインするかをチェックし、要件を満たしていないユーザーのログインを許可しません。今回はこのログインページの書き方を紹介します。
まず JavaScript を使用して Cookie を作成し、次に Cookie が存在するかどうかを確認します。これを行うために JavaScript を使用するため、ユーザーが JavaScript をオンにせずに Cookie をオンにしても、Cookie がオンになっていないという結果が得られます。しかし、これは私たちの要件と矛盾しません。とにかく、両方を開く必要があります。 (JavaScript を気にせず、Cookie が有効かどうかだけを知りたい場合は、方法があります。これについては別の記事で説明します。) ユーザーが JavaScript を有効にしているかどうかを判断するために、次の非表示のファイルを作成しました。 JavaScript 関数は、非表示フォームの値を変更します。値が変更されると、JavaScript がオンになります。それ以外の場合、JavaScript 関数は呼び出されません。 (上記2つの関数を1つの関数で書きました)
まず、HTML内に<form>...</form>で囲った隠しフォームを配置します。 (もちろん、
<FORM>
のユーザー名/パスワードも使用できます)
...
<input type="hidden" name="cookieexists" value="false">
</FORM>
値が false である限り、ブラウザが JavaScript をサポートしていないことを意味します。初期値は false であることに注意してください。 JavaScript 関数はこの値
を true に変更します。これを BODY に記述します:
<body onload="cc()">
cc() の内容は次のとおりです。
以下は引用部分です。
<スクリプト言語="JavaScript">
<!-
関数cc()
{
/* Cookie をチェックします */
if (document.cookie == "")
{
/* Cookie が見つからない場合 - ユーザーに警告 -
cookieexists フィールドの値を false に変更します */
alert("Cookie を有効にする必要があります!");
/* ユーザーが Cookie を無効にしている場合は、アラートがユーザーに通知します
ログオンするには Cookie を有効にする必要があることを示します。*/
document.Form1.cookieexists.value="false"
} それ以外 {
/* これにより値が true に設定され、他には何も起こりません。
ユーザーはログオンできるようになります*/
document.Form1.cookieexists.value="true"
}
}
/* Cookie が存在することを確認するために Cookie を設定します。
これは関数の外にあることに注意してください*/
document.cookie = 'キルミー' + エスケープ('何も')
// -->
</script>
このプログラムが実装できる機能は次のとおりです。
1. ユーザーの JavaScript がオンで Cookie がオフになっている場合、警告メッセージが表示されます。
2. ユーザーの JavaScript がオフになっている場合、ユーザーはチェック結果を直接取得できません。 (警告ウィンドウをポップアップするには、alert JavaScript ステートメントも実行する必要があることを忘れないでください。この時点では、チェックを入れてもプロンプトは表示されません)。バックグラウンド プログラムは cookieexists フィールドの値が false であることを検出するため、JavaScript がオフになっていることを意味します。あなたが将来何をするつもりなのか、私に言う必要はありませんよね?