QueryString

(PWS4 IIS4 IIS5)
QueryString — HTTP クエリ文字列内の変数の値を取得します。

Request.QueryString( variable )[( index )|.Count]
variable:HTTP クエリ文字列内にある、取得する変数の名前を指定します。
index:variable の複数の値のうちの 1 つを取得できるようにするための省略可能なパラメータです。1 ~ Request.QueryString( variable ).Count までの整数値を指定できます。

説明

QueryString コレクションは、ServerVariables コレクション内の変数 QUERY_STRING が解析されたものであり、QUERY_STRING の各変数を名前で参照することができます。Request.QueryString( parameter ) の値は、QUERY_STRING に出現するすべての parameter の値の配列になります。パラメータの値の数は、Request.QueryString( parameter ).Count を呼び出して調べることができます。変数に関連付けられているデータ セットが複数でない場合は、個数は 1 になります。変数が見つからない場合には、個数は 0 になります。
複数のデータ セットのうちの 1 つにある QueryString 変数を参照するには、index の値を指定します。パラメータ index には 1 ~ Request.QueryString( variable ).Count までの値を指定できます。index の値を指定せずに複数の QueryString 変数の 1 つを参照した場合、データはカンマで区切られた文字列として返されます。
Request.QueryString でパラメータを使用すると、サーバーはその要求に送られたパラメータを解析して、指定されたデータを返します。未解析の QueryString データがアプリケーションで必要な場合は、パラメータを指定せずに Request.QueryString を呼び出すことで取得できます。
ループを使用することで、クエリ文字列内のすべてのデータ値を解析できます。たとえば、次のような要求が送られたとします。

http://localhost/script/directory/NAMES.ASP?Q=Fred&Q=Sally

そして、Names.asp に次のスクリプトが記述されているとします。

1
2
3
4
5
<%
  For Each item In Request.QueryString("Q")
    Response.Write (item) & "<br />"
  Next
%>

すると、Names.asp には次のように表示されます。

1
2
Fred
Sally

上のスクリプトは、次のように Count を使用して記述することも可能です。

1
2
3
4
5
<%
  For i = 1 To Request.QueryString("Q").Count
    Response.Write Request.QueryString("Q")(i) & "<br />"
  Next
%>

Formコレクション も参照ください。