DetailPage-MSS-KB

기술 자료

기술 자료: 175167 - 마지막 검토: 2006년 5월 2일 화요일 - 수정: 4.0

이 문서는 이전에 다음 ID로 출판되었음: KR175167

이 페이지에서

요약

HTML 양식을 사용하는 웹 사이트를 개발하는 경우 나중에 사용하기 위해 사용자가 입력한 정보를 추적해야 할 수도 있습니다. 이 작업을 "값 보존"이라고 합니다.

Active Server Pages(ASP)는 이 작업을 편리하게 수행할 수 있는 세션 변수를 제공하지만 이 변수를 사용하려면 세션 ID가 필요합니다. 본 문서에서는 세션 쿠키를 사용하지 않고 양식 값을 저장하는 방법을 설명합니다.

추가 정보

HTML로 개발할 때 값을 보존하기 위해 일반적으로 아래 세 가지 방법을 사용합니다.

값을 양식의 숨김 필드에 저장

값을 숨김 필드에 저장하면 값은 보이지 않지만 손상되지 않습니다. 사용자가 양식을 전송하면 양식 값이 읽혀진 다음 곧바로 HTML 양식의 숨김 필드에 다시 작성됩니다. 이 값은 그 양식이 전송될 때 다른 필드와 함께 전송됩니다.

아래의 세 페이지는 이 방법에 대한 예를 보여줍니다.
   <%@ LANGUAGE="VBSCRIPT" %>
   <!-- This is FORM1.HTM -->

      <HTML>
      <HEAD><TITLE>FORM1.HTM</TITLE></HEAD>
      <BODY>
      <Form Action=Form2.asp Method=Post>
         <Input Type=Text Value="Page1 Value" Name="Value1"><P>

         <Input Type=Submit Name=btnSubmit>
      </Form>
      </BODY>
      </HTML>

   <!-- This is FORM2.ASP -->
   <%@ LANGUAGE="VBSCRIPT" %>
        <%
       Response.Cookies("Value1") = Request("Value1")
        ' If you wish to have the value persisted beyond the current visit,
        ' you must also assign an expiration date as follows:
        Response.Cookies("Value1").Expires = "July 31, 1998"
        %>
        <HTML>
        <HEAD><TITLE>FORM2.ASP</TITLE></HEAD>
        <BODY>
        <Form Action=Form3.asp Method=Post>
          <Input Type=Text Value="Page2 Value" Name="Value2"><P>
          <Input Type=Submit Name=btnSubmit>
        </Form>
        </BODY>
        </HTML>

   <!-- This is FORM3.ASP -->
   <%@ LANGUAGE="VBSCRIPT" %>
      <HTML>
      <HEAD><TITLE>FORM3.ASP</TITLE></HEAD>
      <BODY>
      Value 1 = <%= Request("Value1") %><BR>
      Value 2 = <%= Request("Value2") %><BR>
      </BODY>
      </HTML>

값을 URL에 추가

이 방법은 첫 번째 방법과 비슷하지만 값을 숨김 변수에 전달하지 않고 대신 URL의 끝에 추가하여 전송합니다. 이 방법의 단점은 브라우저마다 다를 수 있는 URL의 크기 제한에 있습니다. 또한, 개인 정보나 기타 정보가 다른 사용자에게 노출되기 쉽습니다. 아래의 페이지는 이 방법에 대한 예를 보여줍니다.
   <!-- This is FORM1.HTM -->
   <%@ LANGUAGE="VBSCRIPT" %>
      <HTML>
      <HEAD><TITLE>FORM1.HTM</TITLE></HEAD>
      <BODY>
      <Form Action=Form2.asp Method=Post>
         <Input Type=Text Value="Page1 Value" Name="Value1"><P>

         <Input Type=Submit Name=btnSubmit>
      </Form>
      </BODY>
      </HTML>

   <!-- This is FORM2.ASP -->
   <%@ LANGUAGE="VBSCRIPT" %>
      <HTML>
      <HEAD><TITLE>FORM2.ASP</TITLE></HEAD>
      <BODY>

      <Form Action="Form3.asp?value1=<%=
       Server.URLEncode(Request("Value1"))
       %>" Method=Post>
         <Input Type=Text Value="Page2 Value" Name="Value2"><P>

         <Input Type=Submit Name=btnSubmit>
      </Form>
      </BODY>
      </HTML>

   <!-- This is FORM3.ASP -->
   <%@ LANGUAGE="VBSCRIPT" %>
      <HTML>
      <HEAD><TITLE>FORM3.ASP</TITLE></HEAD>
      <BODY>
      Value 1 = <%= Request("Value1") %><BR>
      Value 2 = <%= Request("Value2") %><BR>
      </BODY>
      </HTML>

자신만의 쿠키에 기록

이 방법은 정보를 다시 클라이언트 컴퓨터에 기록해야 하기 때문에 잘 사용되지 않습니다. 이 방법이 일반적인 세션 기반 변수를 사용하는 방법보다 나은 점은 브라우저를 통해 나중에 다시 방문할 수 있도록 정보를 보존한다는 것뿐입니다. 이 때문에 웹 서버에 정보를 유지할 필요성이 줄어듭니다.
   <!-- This is FORM1.HTM -->
   <%@ LANGUAGE="VBSCRIPT" %>
      <HTML>
      <HEAD><TITLE>FORM1.HTM</TITLE></HEAD>
      <BODY>
      <Form Action=Form2.asp Method=Post>
         <Input Type=Text Value="Page1 Value" Name="Value1"><P>
         <Input Type=Submit Name=btnSubmit>
      </Form>
      </BODY>
      </HTML>

   <!-- This is FORM2.ASP -->
   <%@ LANGUAGE="VBSCRIPT" %>
      <% Response.Cookies("Value1") = Request("Value1") %>
      <HTML>
      <HEAD><TITLE>FORM2.ASP</TITLE></HEAD>
      <BODY>
      <Form Action=Form3.asp Method=Post>
         <Input Type=Text Value="Page2 Value" Name="Value2"><P>
         <Input Type=Submit Name=btnSubmit>
      </Form>
      </BODY>
      </HTML>

   <!-- This is FORM3.ASP -->
   <%@ LANGUAGE="VBSCRIPT" %>
      <HTML>
      <HEAD><TITLE>FORM3.ASP</TITLE></HEAD>
      <BODY>
      Value 1 = <%= Request.Cookies("Value1") %><BR>
      Value 2 = <%= Request("Value2") %><BR>
      </BODY>
      </HTML>

참조

Visual InterDev 및 Active Server Pages에 대한 최신 기술 자료 문서와 기타 지원 정보를 보려면 Microsoft 기술 지원 웹 사이트에서 아래 문서를 참조하십시오.
http://support.microsoft.com/search/default.aspx?qu=vinterdev (http://support.microsoft.com/search/default.aspx?qu=vinterdev)

(c) Microsoft Corporation 1997, All Rights Reserved.
기고: Paul Enfield, Microsoft Corporation


본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Active Server Pages 1.0
  • Microsoft Visual Studio 97 서비스 팩 3
  • Microsoft Internet Information Server 4.0
  • Microsoft Internet Information Services 5.0
키워드: 
kbvisid100 kbscript kbaspobj kbvbscript kbdsi kbgrpasp KB175167
공유
추가 지원 옵션
Microsoft Community 지원 포럼
직접 문의하기
Microsoft Certified Partner 찾기
Microsoft Store
소기업이 아닙니까?
다음에서 팔로우하십시오.