ASP Cookie

Cookies worden vaak gebruikt om gebruikers te identificeren.

Voorbeeld

Welkomstcookie
Hoe een welkomstcookie te maken.

Wat is een Cookie?

Cookies worden vaak gebruikt om gebruikers te identificeren. Een cookie is een klein bestand dat een server op de computer van de gebruiker achterlaat. Elke keer dat dezelfde computer een pagina opvraagt via een browser, stuurt deze computer ook een cookie.

Hoe cookies maken?

"Response.Cookies" commando wordt gebruikt om cookies te maken.

Let op:Het "Response.Cookies" commando moet zich bevinden voordat de <html>-tag.

In het volgende voorbeeld maken we een cookie genaamd "firstname" aan en wijzen we de waarde "Alex" toe aan deze cookie:

<%
Response.Cookies("firstname")="Alex"
%>

Het toewijzen van eigenschappen aan een cookie is ook mogelijk, bijvoorbeeld het instellen van de verloopdatum van de cookie:

<%
Response.Cookies("firstname")="Alex" 
Response.Cookies("firstname").Expires=#May 10,2020#
%>

Hoe de waarde van een cookie ophalen?

"Request.Cookies" commando wordt gebruikt om de waarde van de cookie op te halen.

In het volgende voorbeeld halen we de waarde van de cookie genaamd "firstname" op en tonen we deze op de pagina:

<%
fname=Request.Cookies("firstname")
response.write("Firstname=" & fname)
%>

Uitvoer:

Firstname=Alex

Cookies met keys

Als een cookie een verzameling van meerdere waarden bevat, kunnen we zeggen dat de cookie keys heeft (Keys).

In het volgende voorbeeld maken we een cookie-set genaamd "user" aan. De "user" cookie heeft de volgende keys: informatie van de gebruiker:

<%
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname")="Adams"
Response.Cookies("user")("country")="UK"
Response.Cookies("user")("age")="25"
%>

Lees alle cookies

Lees het volgende code:

<%
Response.Cookies("firstname")="Alex"
Response.Cookies("user")("firstname")="John"
Response.Cookies("user")("lastname")="Adams"
Response.Cookies("user")("country")="UK"
Response.Cookies("user")("age")="25"
%>

Stel dat je server alle cookies van een gebruiker heeft doorgegeven.

Nu moeten we deze cookies lezen. Dit voorbeeld toont je hoe je dat kunt doen (let op: de onderstaande code gebruikt HasKeys om te controleren of de cookie eigenschappen heeft):

<html>
<body>
<%
dim x,y
 for each x in Request.Cookies
  response.write("<p>")
  if Request.Cookies(x).HasKeys then
    for each y in Request.Cookies(x)
      response.write(x & ":" & y & "=" & Request.Cookies(x)(y))
      response.write("<br />")
    next
  else
    Response.Write(x & "=" & Request.Cookies(x) & "<br />")
  end if
  response.write "</p>"
next
%>
</body>
</html>

Uitvoer:

firstname=Alex
user:firstname=John
user:lastname=Adams
user:country=UK
user:age=25

Hoe om te gaan met browsers die cookies niet ondersteunen?

Als uw applicatie moet communiceren met browsers die cookies niet ondersteunen, moet u andere methoden gebruiken om informatie tussen pagina's in uw applicatie over te dragen. Er zijn twee manieren:

1. Voeg parameters toe aan de URL

U kunt parameters toevoegen aan de URL:

<a href="welcome.asp?fname=John&lname=Adams">
Ga naar de Welkomspagina
</a>

Dan worden deze waarden opgehaald in een bestand zoals hieronder vermeld:

<%
fname=Request.querystring("fname")
lname=Request.querystring("lname")
response.write("<p>Hello " & fname & " " & lname & "!</p>")
response.write("<p>Welcome to my Web site!</p>")
%>

2. Gebruik van een formulier

U kunt ook een formulier gebruiken. Wanneer de gebruiker op de knop "Verzenden" klikt, stuurt het formulier de ingevoerde gegevens door aan "welcome.asp":

<form method="post" action="welcome.asp">
Voornaam:  <input type="text" name="fname" value="">
Achternaam: <input type="text" name="lname" value="">
<input type="submit" value="Submit">
</form>

Dan na in het "welcome.asp"-bestand deze waarden ophalen, zoals hieronder aangegeven:

<%
fname=Request.form("fname")
lname=Request.form("lname")
response.write("<p>Hello " & fname & " " & lname & "!</p>")
response.write("<p>Welcome to my Web site!</p>")
%>