Solved

How to "Write" and "Read" Cookies in VBScript ?

Posted on 2008-10-08
5
975 Views
Last Modified: 2012-05-05
Hi,

I want to write a cookie called "UserName" and its value is "Sam". Can you please provide me complete code in VBScript - How to write that cookie and how to read that cookie ?

Appreciate your help for providing the code !

Thanks
0
Comment
Question by:milani_lucie
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
5 Comments
 
LVL 8

Expert Comment

by:vsudip
ID: 22675843
0
 
LVL 4

Expert Comment

by:techvagabond
ID: 22675857
Try something like this


<%@ Page Language=VB Debug=true %>
<script runat=server>
Sub SubmitBtnWrite_Click(Sender As Object, E As EventArgs)
        Response.Cookies("UserName").Expires = "5/1/2010"
        Response.Cookies("UserName").Value = "Sam"
End Sub
Sub SubmitBtnRead_Click(Sender As Object, E As EventArgs)
    Dim I as integer
    For I = 0 to Request.Cookies.Count - 1
        lblMessage1.Text = lblMessage1.Text  _
            & Request.Cookies.Item(I).Name & ": " _
            & Request.Cookies.Item(I).Value & "<BR>"
    Next
End Sub
</SCRIPT>
<HTML>
<HEAD>
<TITLE>Cookies Sample Page</TITLE>
</HEAD>
<BODY >
<form runat="server">
<Font Face="Tahoma">
<asp:Label
    id="lblMessage1"
    runat="Server"
    Font-Bold="True"
/>
<BR><BR>
<asp:button
    id="butOK1"
    runat="server"
    text="Write Cookies to Browser"
    Type="Submit"
    OnClick="SubmitBtnWrite_Click"
/>
<asp:button
    id="butOK2"
    runat="server"
    text="Read Cookies from Browser"
    Type="Submit"
    OnClick="SubmitBtnRead_Click"
/>
</Font>
</Form>
</BODY>
</HTML>
0
 

Author Comment

by:milani_lucie
ID: 22675882
techvagabond:

Do we need to go to the server ? Can we do it on client side ? I think so we have something like this:

Document.Cookie = "UserName=Sam"

And we need NOT write

Response.Cookies("UserName").Value = "Sam"

Am i correct ? Please correct me if i am wrong !

Thanks
0
 
LVL 4

Expert Comment

by:techvagabond
ID: 22675903
yea you could give that a shot. Try and run it and see how you go. best way to learn is to fiddle :D
0
 
LVL 16

Accepted Solution

by:
sh0e earned 500 total points
ID: 22699310

<script type="text/vbscript">
Function ReadCookie(name)
	Set re = New RegExp
	re.IgnoreCase = True
	re.Pattern = "(?:^|;) ?" & name & "=([^;]*)(?:;|$)"
	Set matches = re.Execute(document.cookie)
	If matches.Count > 0 Then
		ReadCookie = matches(0).SubMatches(0)
	Else
		ReadCookie = ""
	End If
End Function
 
Function WriteCookie(name, val)
	document.cookie = name & "=" & val
End Function
 
WriteCookie "attack","attack"
WriteCookie "tack","tack"
WriteCookie "stack","stack"
 
MsgBox document.cookie
 
MsgBox ReadCookie("attack")
MsgBox ReadCookie("tack")
MsgBox ReadCookie("stack")
If ReadCookie("ack") = "" Then
	MsgBox "No cookie data found for ack"
End If
 
</script>
 
<script type="text/javascript">
function readcookieJS(name){
	var re = new RegExp("(?:^|;) ?" + name + "=([^;]*)(?:;|$)", "i");
	var match = document.cookie.match(re);
	return match == null ? "" : match[1];
	/*If matches.Count > 0 Then
		ReadCookie = matches(0).SubMatches(0)
	Else
		ReadCookie = Null
	End If*/
}
function writecookieJS(name, val){
	document.cookie = name + "=" + val;
}
 
writecookieJS("attack1","attack1")
writecookieJS("tack1","tack1")
writecookieJS("stack1","stack1")
 
alert(document.cookie);
 
alert(readcookieJS("attack1"));
alert(readcookieJS("tack1"));
alert(readcookieJS("stack1"));
if(readcookieJS("ack1") == "")
	alert("No cookie data found for ack1");
</script>

Open in new window

0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Well hello again!  Glad to see you've made it this far without giving up.  In this, the fourth installment of my popular series, I'm going to cover functions and subroutines, what they are, and why they are useful.  Just in case you stumbled onto th…
When it comes to writing scripts for a Client/Server computing environment it is essential to consider some way of enabling the authentication functionality within a script. This sort of consideration mainly comes into the picture when we are dealin…
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an antispam), the admini…

738 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question