ASPフォームとユーザー入力
Request.QueryStringコマンドとRequest.Formコマンドは、フォームからユーザー入力を取得するために使用されます。
その他の例
Request.QueryStringコマンドを使用して、ユーザーと対話する方法。
Request.Formコマンドを使用してユーザーと対話する方法。
を使用して、Request.Formコマンドを使用してユーザーと対話する方法。
ユーザー入力
Requestオブジェクトを使用して、フォームからユーザー情報を取得できます。
ユーザー入力は、Request.QueryStringまたはRequest.Formコマンドを使用して取得できます。
Request.QueryString
Request.QueryStringコマンドは、method = "get"の形式で値を収集するために使用されます。
GETメソッドを使用してフォームから送信された情報は、すべてのユーザーに表示され(ブラウザーのアドレスバーに表示されます)、送信する情報の量に制限があります。
HTMLフォームの例
<form method="get" action="simpleform.asp">
First Name: <input type="text" name="fname"><br>
Last Name: <input type="text" name="lname"><br><br>
<input type="submit" value="Submit">
</form>
ユーザーが上記のHTMLフォームに「Bill」と「Gates」と入力した場合、サーバーに送信されるURLは次のようになります。
https://www.w3schools.com/simpleform.asp?fname=Bill&lname=Gates
「simpleform.asp」に次のASPスクリプトが含まれていると想定します。
<body>
Welcome
<%
response.write(request.querystring("fname"))
response.write(" " & request.querystring("lname"))
%>
</body>
ブラウザは、ドキュメントの本文に次のように表示します。
Welcome Bill Gates
Request.Form
Request.Formコマンドは、method = "post"を使用してフォームに値を収集するために使用されます。
POSTメソッドを使用してフォームから送信された情報は、他のユーザーには表示されず、送信する情報の量に制限はありません。
HTMLフォームの例
<form method="post" action="simpleform.asp">
First Name: <input type="text" name="fname"><br>
Last Name: <input type="text" name="lname"><br><br>
<input type="submit" value="Submit">
</form>
ユーザーが上記のHTMLフォームに「Bill」と「Gates」と入力した場合、サーバーに送信されるURLは次のようになります。
https://www.w3schools.com/simpleform.asp
「simpleform.asp」に次のASPスクリプトが含まれていると想定します。
<body>
Welcome
<%
response.write(request.form("fname"))
response.write(" " & request.form("lname"))
%>
</body>
ブラウザは、ドキュメントの本文に次のように表示します。
Welcome Bill Gates
フォームの検証
ユーザー入力は、可能な限りブラウザで検証する必要があります(クライアントスクリプトによって)。ブラウザの検証が高速になり、サーバーの負荷が軽減されます。
ユーザー入力がデータベースに挿入される場合は、サーバーの検証を検討する必要があります。サーバー上のフォームを検証する良い方法は、別のページにジャンプするのではなく、フォームをそれ自体に投稿することです。その後、ユーザーはフォームと同じページにエラーメッセージを表示します。これにより、エラーの発見が容易になります。