ASP 양식과 사용자 입력
Request.QueryString과 Request.Form 명령어는 사용자 입력과 같은 정보를 양식에서 가져올 수 있습니다。
예제:
- method="get"를 사용하는 양식
- Request.QueryString 명령어를 통해 사용자와 상호작용하는 방법
- method="post"를 사용하는 양식
- Request.Form 명령어를 통해 사용자와 상호작용하는 방법
- 선택 사항을 사용하는 양식
- Request.Form을 통해 선택 사항으로 사용자와 상호작용하는 방법
사용자 입력
Request 객체는 사용자 정보를 얻기 위해 양식에서 사용할 수 있습니다。
HTML 폼 예제
<form method="get" action="simpleform.asp"> <p>First Name: <input type="text" name="fname" /></p> <p>Last Name: <input type="text" name="lname" /></p> <input type="submit" value="Submit" /> </form>
사용자가 입력한 정보는 Request.QueryString 또는 Request.Form을 통해 두 가지 방식으로 볼 수 있습니다.
Request.QueryString
Request.QueryString 명령어는 "method="get""를 사용하여 폼의 값을 수집합니다. "get" 메서드를 통해 폼에서 전송된 정보는 모든 사용자에게 공개되며(브라우저의 주소 표시줄에 나타납니다), 전송할 정보의 양에 대한 제한이 있습니다.
HTML 폼 예제
<form method="get" action="simpleform.asp"> <p>First Name: <input type="text" name="fname" /></p> <p>Last Name: <input type="text" name="lname" /></p> <input type="submit" value="Submit" /> </form>
사용자가 위의 폼 예제에 "Bill"과 "Gates"를 입력하고 서버로 전송된 URL은 다음과 같이 될 것입니다:
http://www.codew3c.com/simpleform.asp?fname=Bill&lname=Gates
예를 들어, ASP 파일 "simpleform.asp"는 다음과 같은 코드를 포함하고 있습니다:
<body> Welcome <% response.write(request.querystring("fname")) response.write(" " & request.querystring("lname")) %> </body>
브라우저는 다음과 같이 표시됩니다:
Welcome Bill Gates
Request.Form
Request.Form 명령어는 "post" 메서드를 사용하여 폼의 값을 수집합니다. "post" 메서드를 통해 폼에서 전송된 정보는 사용자에게는 숨겨지며 전송할 정보의 양에 대한 제한이 없습니다.
HTML 폼 예제
<form method="post" action="simpleform.asp"> <p>First Name: <input type="text" name="fname" /></p> <p>Last Name: <input type="text" name="lname" /></p> <input type="submit" value="Submit" /> </form>
사용자가 위의 폼 예제에 "Bill"과 "Gates"를 입력하고 서버로 전송된 URL은 다음과 같이 될 것입니다:
http://www.codew3c.com/simpleform.asp
예를 들어, ASP 파일 "simpleform.asp"는 다음과 같은 코드를 포함하고 있습니다:
<body> Welcome <% response.write(request.form("fname")) response.write(" " & request.form("lname")) %> </body>
브라우저는 다음과 같이 표시됩니다:
Welcome Bill Gates
폼 검증
가능하다면, 사용자가 입력한 데이터를 검증해야 합니다(클라이언트 스크립트를 통해). 브라우저의 검증 속도가 빠르며 서버 부하를 줄일 수 있습니다.
사용자 데이터가 데이터베이스에 입력될 경우, 서버 측 검증을 고려해야 합니다. 서버 측에서 양식을 검증하는 좋은 방법은 (검증된) 양식을 다른 페이지로 이동하는 대신 양식 페이지로 다시 전송하는 것입니다. 이렇게 하면 사용자가 동일한 페이지에서 오류 정보를 받을 수 있습니다. 이렇게 하면 사용자가 오류를 더 쉽게 발견할 수 있습니다.