ASP- cookies


Een cookie wordt vaak gebruikt om een ​​gebruiker te identificeren.


Meer voorbeelden


Hoe maak je een welkomstcookie aan.


Wat is een koekje?

Een cookie wordt vaak gebruikt om een ​​gebruiker te identificeren. Een cookie is een klein bestand dat de server op de computer van de gebruiker insluit. Elke keer dat dezelfde computer een pagina met een browser opvraagt, verzendt deze ook de cookie. Met ASP kunt u zowel cookie-waarden maken als ophalen.


Hoe maak je een cookie aan?

De opdracht "Response.Cookies" wordt gebruikt om cookies te maken.

Opmerking: de opdracht Response.Cookies moet VOOR de tag <html> verschijnen.

In het onderstaande voorbeeld zullen we een cookie maken met de naam "firstname" en daaraan de waarde "Alex" toewijzen:

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

Het is ook mogelijk om eigenschappen aan een cookie toe te kennen, zoals het instellen van een datum waarop de cookie moet verlopen:

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

Hoe een cookiewaarde ophalen?

De opdracht "Request.Cookies" wordt gebruikt om een ​​cookiewaarde op te halen.

In het onderstaande voorbeeld halen we de waarde van de cookie met de naam "firstname" op en tonen deze op een pagina:

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

Uitvoer: Voornaam=Alex



Een koekje met sleutels

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

In het onderstaande voorbeeld maken we een verzameling cookies aan met de naam "gebruiker". De "gebruiker"-cookie heeft Sleutels die informatie over een gebruiker bevatten:

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

Lees alle Cookies

Kijk naar de volgende code:

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

Stel dat uw server alle bovenstaande cookies naar een gebruiker heeft gestuurd.

Nu willen we alle cookies lezen die naar een gebruiker zijn verzonden. Het onderstaande voorbeeld laat zien hoe u dit moet doen (merk op dat de onderstaande code controleert of een cookie Keys heeft met de eigenschap HasKeys):

<!DOCTYPE html>
<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>

Uitgang:

voornaam=Alex

user:firstname=John
user:lastname=Smith
user:country=Noorwegen
user:age=25


Wat als een browser GEEN cookies ondersteunt?

Als uw applicatie te maken heeft met browsers die geen cookies ondersteunen, moet u andere methoden gebruiken om informatie van de ene pagina naar de andere in uw applicatie door te geven. Er zijn twee manieren om dit te doen:

1. Voeg parameters toe aan een URL

U kunt parameters aan een URL toevoegen:

<a href="welcome.asp?fname=John&lname=Smith">Go to Welcome Page</a>

En haal de waarden in het "welcome.asp"-bestand als volgt op:

<%
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 een formulier

U kunt een formulier gebruiken. Het formulier geeft de gebruikersinvoer door aan "welcome.asp" wanneer de gebruiker op de knop Verzenden klikt:

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

Haal de waarden in het "welcome.asp" bestand als volgt op:

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