Request.QueryString を 使った ソースコードを紹介する表示色の説明:ASP VBScriptは <% 〜 %> キーワードはRequest.QueryString です。
<%@LANGUAGE=VBScript%>
<html>
<head><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=x-sjis">
<title>パラメータをチェックする</title>
</head>
<body>
<h2>パラメータをチェックする</h2>
test044-1.asp<br>
<hr>
エラー条件は、<br>
KUBUN が 無し(スペース)<br>
NO が無し Or 0の時<br>
A か 1〜5以外の時(範囲外の時)<br>
<hr>
<%
'値の代入
KUBUN = Request.QueryString("KUBUN")
NO = Request.QueryString("NO")
A = Request.QueryString("A")
'テストで値を表示
Response.Write "<Font Color='BLUE'>受取った値は</Font><BR>"
'For Each で Request.QueryStringの値を取出す
For Each RQ In Request.QueryString
Response.Write RQ & "=" '名称表示
Response.Write Request.QueryString(RQ) & "<BR>" '値の表示
Next
'パラメータのチェックを行う
ret = errchk() 'チェック用の関数を呼ぶ
If ret = -1 Then 'エラーか?
Response.Write "<Font Color='red'>"
Response.Write "受取ったパラメータが異常です"
Response.Write "</Font>"
Else '正常時
Response.Write "パラメータは正常です"
End If
%>
<hr>
正常パターンテスト用<br>
<A HREF="test044-1.asp?KUBUN=ASP&NO=44&A=5">test044-1.asp?KUBUN=ASP&NO=44&A=5</A><br>
<A HREF="test044-1.asp?KUBUN=ASP&NO=44&A=4">test044-1.asp?KUBUN=ASP&NO=44&A=4</A><br>
<A HREF="test044-1.asp?KUBUN=ASP&NO=44&A=3">test044-1.asp?KUBUN=ASP&NO=44&A=3</A><br>
<A HREF="test044-1.asp?KUBUN=ASP&NO=44&A=2">test044-1.asp?KUBUN=ASP&NO=44&A=2</A><br>
<A HREF="test044-1.asp?KUBUN=ASP&NO=44&A=1">test044-1.asp?KUBUN=ASP&NO=44&A=1</A><br>
<br>
エラーテスト用<br>
<A HREF="test044-1.asp?NO=44&A=1">test044-1.asp?NO=44&A=1 区分無し</A><br>
<A HREF="test044-1.asp?KUBUN=ASP&A=2">test044-1.asp?KUBUN=ASP&A=2 NO無し</A><br>
<A HREF="test044-1.asp?KUBUN=ASP&NO=44">test044-1.asp?KUBUN=ASP&NO=44 評価無し</A><br>
<A HREF="test044-1.asp?KUBUN=ASP&NO=44&A=6">test044-1.asp?KUBUN=ASP&NO=44&A=6 評価範囲外</A><br>
<br>
</body>
</html>
<% '外側に関数を書いてます(どこでもいいんだけど)
Function errchk() 'パラメータのエラーをチェックします 0:正常 -1:エラー
errchk = 0 'エラーを無しにする(初期値で代入)
'KUBUN が 無し(スペース)
If Len(KUBUN) = 0 Then errchk = -1
'NO が無し Or 0の時
If Len(NO) = 0 Then errchk = -1
If CInt(NO) = 0 Then errchk = -1
'A か 1〜5以外の時(範囲外の時)
If A < 1 Or 5 < A Then errchk = -1
End Function
%>
|