ASP クッキー



Cookieはユーザーを識別するためによく使用されます。


tryitimg.gif

試してみる - 例

ウェルカム Cookie
この例では、ウェルカム クッキーの作成方法を示します。


クッキーとは何ですか?

Cookieはユーザーを識別するためによく使用されます。 Cookie は、サーバーがユーザーのコンピュータ上に残す小さなファイルです。同じコンピュータがブラウザを通じてページをリクエストするたびに、Cookie がコンピュータに送信されます。 ASP を使用すると、Cookie 値を作成および取得できます。


クッキーを作成するにはどうすればよいですか?

Cookieの作成には「Response.Cookies」コマンドを使用します。

注: Response.Cookies コマンドは <html> タグの前に指定する必要があります。

次の例では、「firstname」という名前の Cookie を作成し、値「Alex」を割り当てます。

<%
Response.Cookies("firstname")="Alex"
% >

Cookie の有効期限を設定するなど、Cookie に属性を割り当てることもできます:

<%
Response.Cookies("firstname")="Alex"
Response.Cookies("firstname").Expires = #May 10,2012#
%>


Cookie の値を取得するにはどうすればよいですか?

Cookie値の取得には「Request.Cookies」コマンドを使用します。

次の例では、「firstname」という名前の Cookie の値を取得し、その値をページに表示します。

<%
fname=Request.Cookies("firstname")
response. =" & fname)
%>

出力: Firstname=Alex


キーを持つ Cookie

Cookie に複数の値のコレクションが含まれている場合、Cookie にはキーがあると言えます。

以下の例では、「user」という名前の Cookie コレクションを作成します。 「ユーザー」Cookie には、ユーザー情報を含むキーがあります:

<%
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname") ="スミス"
Response.Cookies("ユーザー")("国")="ノルウェー"
Response.Cookies("ユーザー")("年齢")="25"
%>


すべての Cookie を読む

次のコードをお読みください:

<%
Response.Cookies("firstname")="Alex"
Response.Cookies("user")("firstname")= "John "
Response.Cookies("ユーザー")("姓")="スミス"
Response.Cookies("ユーザー")("国")="ノルウェー"
Response.Cookies("ユーザー")(" 年齢" )="25"
%>

サーバーが上記の Cookie をすべてユーザーに渡すとします。

ここで、ユーザーに渡されたすべての Cookie を読み取る必要があります。次の例は、これを行う方法を示しています (以下のコードは、Cookie にキーがあるかどうかを HasKeys プロパティ経由でチェックしていることに注意してください)。 %

dim x,y
Request.Cookies の各 x について
response.write("<p>")
if Request.Cookies(x).HasKeys then
Request.Cookies(x ) の各 y について
response .write(x & ":" & y & "=" & Request.Cookies(x)(y))
response.write("<br>")
next
else
Response.Write(x & "= " & Request.Cookies(x) & "<br>")
end if
response.write "</p>"
next
%>

</body>
</ html>



output:


firstname=Alex
user:firstname=John

user:lastname=Smithuser:country=Norwayuser:age=25

ブラウザがCookie管理をサポートしていない場合の対処方法?


アプリケーションが Cookie をサポートしていないブラウザに対応する必要がある場合は、アプリケーション内のページ間で情報を渡すために他の方法を使用する必要があります。ここには 2 つの方法があります:

1. URL にパラメータを追加します。


URL にパラメータを追加できます:

<a href="welcome.asp?fname=John&lname=Smith">ようこそページに移動< ;/ a>

次に、次のように「welcome.asp」ファイル内のこれらの値を取得します:

<%
fname=Request.querystring("fname")
lname=Request.querystring("lname " )
response.write("<p>こんにちは " & fname & " " & lname & "!</p>")

response.write("<p>私の Web サイトへようこそ!</ p> ;")

%>

2.フォームを使用する

フォームを使用できます。ユーザーが [送信] ボタンをクリックすると、フォームはユーザー入力を "welcome.asp" に渡します:

<form method="post" action="welcome.asp">
名: <入力タイプ=" text" name="fname" value="">
姓: <input type="text" name="lname" value="">
<input type="submit" value=" 「Submit」>
</form>

次に、次のように「welcome.asp」ファイルでこれらの値を取得します:

<%
fname=Request.form("fname")
lname= Request .form("lname")
response.write("<p>こんにちは " & fname & " " & lname & "!</p>")
response.write("<p>ようこそウェブ サイト!</p>")
%>