HOWTO: How To Maintain State Across Pages with VBScript

ID: Q157906

1.00 1.10 2.00 WINDOWS kbprg kbhowto
The information in this article applies to:


SUMMARY

This article illustrates the three ways that you can maintain state across Web pages using Visual Basic Scripting Edition.

Following are the three methods:


MORE INFORMATION

The three methods are described in more detail below. To view an example that demonstrates the three methods, create the HTML files that are described in each section. You can use Notepad or any other text editor to create the files.

Method 1 - Assigning a Cookie to an Alternate HREF

To use method 1, you need to read your files from an HTTP server.

   ******** Begin Page1-1.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub SetCookie
        document.cookie = "MyVar='101'; path='page1-2.htm'"
      End Sub
    </SCRIPT>
    <BODY>
      <H2>Page 1 - Method 1</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Set Cookie" onClick="SetCookie">
      <A HREF="page1-2.htm"&gt;Go to Page 2&lt;/A>
    </BODY>

   </HTML>
   ******** End Page1-1.htm **********

   ******** Begin Page1-2.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub GetCookie
        MsgBox document.cookie
      End Sub
    </SCRIPT>
    <BODY>
      <H2>Page 2 - Method 1</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Get Cookie" onClick="GetCookie">
    </BODY>

   </HTML>
   ******** End Page1-2.htm   ********** 
Page1-1.htm: Page1-2.htm:

Method 2 - Using a Cookie and Changing the Contents of the Page

To use method 2 you need to read your files from an HTTP server.

   ******** Begin Page2-1.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub SetCookie
        document.cookie = "MyVar=101"
      End Sub

      Sub GotoNextPage
        location.href = "page2-2.htm"
      End Sub
    </SCRIPT>
    <BODY>
      <H2>Page 1 - Method 2</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Set Cookie" onClick="SetCookie">
      <A HREF="" onClick="GotoNextPage"&gt;Go to Page 2&lt;/A>
    </BODY>

   </HTML>
   ******** End Page2-1.htm **********

   ******** Begin Page2-2.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub GetCookie
        MsgBox document.cookie
      End Sub
    </SCRIPT>
    <BODY>
      <H2&gt;Page 2 - Method 2</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Get Cookie" onClick="GetCookie">
    </BODY>

   </HTML>
   ******** End Page2-2.htm ********** 
Page2-1.htm:

Page2-2.htm:

Method 3 - Using Frames and Storing a Value in the Top Level Frame


   ******** Begin Page3-1.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Dim MyVar
    </SCRIPT>

    <FRAMESET COLS="50%,50%">
      <FRAME SRC="page3-2.htm">
      <FRAME SRC="page3-3.htm">
    </FRAMESET>

   </HTML>
   ******** End Page3-1.htm **********

   ******** Begin Page3-2.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub SetVariable
        top.MyVar = 101
      End Sub
    </SCRIPT>
    <BODY>
      <H2>Page 1 - Method 3</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Set Variable" onClick="SetVariable">
    </BODY>
   </HTML>
   ******** End PAGE3-2.HTM **********

   ******** Begin Page3-3.htm **********
   <HTML>

    <SCRIPT LANGUAGE="VBSCRIPT">
      Sub GetVariable
        MsgBox top.MyVar
      End Sub
    </SCRIPT>
    <BODY>
      <H2>Page 2 - Method 3</H2><HR>
      <INPUT TYPE=BUTTON VALUE="Get Variable" onClick="GetVariable">
    </BODY>

   </HTML>
   ******** End Page3-3.htm ********** 
Page3-1.htm:

Page3-2.htm:

Page3-3.htm:


REFERENCES

For more information, please see the MSDN Web Workshop:

http://msdn.microsoft.com/workshop/default.asp

Additional query words: 1.00 kbDSI


Keywords          : PrgSyntaxVBScript 
Version           : WINDOWS:1.1,2.0
Platform          : WINDOWS 
Issue type        : kbhowto 

Last Reviewed: July 23, 1999