Asp : Guide d'application des cookies, code détaillé et tutoriels
Auteur:Eve Cole
Date de mise à jour:2009-06-24 17:28:30
En fait, dans le développement Web, un cookie n'est qu'un fichier texte lorsqu'un utilisateur visite un site, il est stocké sur l'ordinateur utilisé par l'utilisateur lorsque l'utilisateur visite à nouveau le site. , le Web peut extraire ces informations.
Même si les cookies ne semblent pas excitants pour le moment, vous pouvez en réalité faire beaucoup de choses significatives avec eux ! Par exemple : vous pouvez réaliser une enquête sur votre site, demandant aux visiteurs leurs couleurs et polices préférées, puis personnaliser l'interface Web de l'utilisateur en fonction de celles-ci. De plus, vous pouvez également enregistrer le mot de passe de connexion du visiteur, de sorte que lorsque le visiteur visite à nouveau le site, il n'ait pas à saisir de mot de passe pour se connecter.
Bien entendu, les cookies présentent également certains inconvénients. Tout d'abord, étant donné que la fonction des cookies peut être programmée pour réaliser certaines mauvaises intentions, la plupart des navigateurs disposent de paramètres de sécurité dans lesquels vous pouvez définir si vous souhaitez autoriser ou accepter les cookies, il n'y a donc aucune garantie que les cookies puissent être utilisés à tout moment. En outre, les visiteurs peuvent supprimer intentionnellement ou non
cookies. Lorsque la machine du visiteur rencontre un « écran bleu » de crash, ou après avoir reformaté le disque dur ou installé le système, tous les cookies précédemment enregistrés seront perdus. Enfin, certains des premiers navigateurs ne prennent pas en charge les cookies.
Que pouvez-vous faire avec les cookies ?
Il existe deux manières principales d'utiliser les cookies :
1. Écrivez des cookies sur l'ordinateur du visiteur (utilisez la commande RESPONSE)
2. Récupérer les cookies de l'ordinateur du visiteur (utiliser la commande REQUEST)
Syntaxe de base pour la création de cookies
Response.Cookies("CookieName")=valeur
L'exécution du code suivant créera un cookie sur l'ordinateur du visiteur avec name=VisitorName et value=Ken
Réponse.Cookies("VisitorName")="Ken"
L'exécution du code suivant créera un cookie sur l'ordinateur du visiteur, avec nom = VisitorName et valeur = la valeur de UserName dans le formulaire.
Response.Cookies("NomVisiteur")=Request.Form("NomUtilisateur")
Syntaxe de base pour lire les cookies
Demande.Cookies("CookieName")
La valeur Request peut être traitée comme une variable. L'exécution du code suivant récupérera la valeur du cookie nommée KensCookie et la stockera dans la variable MyVar :
MaVar=Request.Cookies("KensCookie")
L'exécution du code suivant déterminera si la valeur du cookie nommée KensCookie est « Oui » :
Si Request.Cookies("KensCookie")="Oui" alors
Cookies riches en fonctionnalités
Vous pouvez étendre le code ci-dessus pour devenir la valeur de la sous-clé Cookie (CookieSubName), le code est le suivant :
Response.Cookies("VisitorName"))("FirstName")="Ken"
Response.Cookies("VisitorName"))("LastName")="Baumbach"
Avant d'expliquer les exemples, abordons deux derniers concepts : la convention de commande et le délai d'expiration d'utilisation.
convention de dénomination
Tout comme pour nommer d’autres variables, nommer les cookies de manière appropriée et unique vous aidera à les utiliser de manière cohérente dans votre programme. Vous pouvez utiliser 1 ou 2 des éléments suivants
L'attribut cookie nomme la variable cookie :
Attribut de domaine (Domain) : L'attribut de domaine indique à partir de quel site Web le cookie est généré ou lu. Par défaut, l'attribut de domaine du cookie est défini sur le site Web qui l'a généré, mais vous pouvez également le modifier si nécessaire. Le code pertinent est le suivant : Response.Cookies("CookieName").Domain = " www.mydomain.com "
Attribut de chemin (Path) : L'attribut de chemin peut mettre en œuvre davantage d'exigences de sécurité. En définissant le chemin précis sur le site Web, vous pouvez limiter la portée de l'utilisation des cookies. Par exemple:
Response.Cookies("CookieName").Path = "/maindir/subdir/path"
Utiliser le délai d'expiration
Normalement, un cookie cesse d'exister à la fermeture du navigateur. Mais il arrive souvent, comme dans l'exemple de site Web présenté ci-dessous, que nous souhaitions enregistrer des cookies sur l'ordinateur du visiteur pendant une période plus longue. Heureusement, il existe un moyen d’y parvenir. Le code suivant peut définir le délai d'expiration des cookies sur 2010
1er janvier :
Response.Cookies("CookieName").Expires=#01 janvier 2010#
L'exécution du code suivant définira le délai d'expiration du cookie sur « délai de création du cookie + 365 jours » :
Réponse.Cookies("CookieName")=Date+365
Exemples pratiques d'utilisation des cookies (très passionnant)
Parlons maintenant d’exemples pratiques. Supposons que vous souhaitiez réaliser une enquête. Tout le monde doit remplir les informations lors de sa première visite, mais lors de sa prochaine visite, il n'est pas nécessaire de le refaire. Grâce aux cookies, vous pouvez résoudre ce problème de manière très satisfaisante sans utiliser de base de données.
< %@ LANGUAGE="VBSCRIPT" % >
<%
Enquête=Request.Cookies("KensSurvey")
Si Survey="" alors
Réponse.Cookies("KensSurvey")="x"
Response.Cookies("KensSurvey").Expires=#01 janvier 2010#
Réponse.Redirection "survey.asp"
Autre
'reste de la page
Terminer si
%>
D'accord, commençons à zéro et discutons du code ci-dessus.
Tout d’abord, configurez initialement la page et lisez la valeur du cookie nommée KensSurvey :
< %@ LANGUAGE="VBSCRIPT" % >
<%
Enquête=Request.Cookies("KensSurvey")
Ensuite, déterminez si la valeur du cookie existe déjà :
Si Survey="" alors
S'il n'existe pas, le cookie est créé et défini, et la page est redirigée vers Survey.asp. Lors de votre prochaine visite, parce que la valeur du cookie existe, vous n'accéderez pas à
page enquête.asp.
Réponse.Cookies("KensSurvey")="x"
Response.Cookies("KensSurvey").Expires=#01 janvier 2010#
Réponse.Redirection "survey.asp"
Si le cookie existe déjà, le visiteur exécutera le code restant sur la page :
'reste de la page
Terminer si
%>
Exemple 2
Voici un autre exemple simple : affichez un message de bienvenue aux visiteurs lorsqu'ils visitent un site pour la première fois. Le code est le suivant :
< %@ LANGUAGE="VBSCRIPT" % >
<%
RequestName = Request.Form("Nom")
RequestLeaveMeAlone = Request.Form("LeaveMeAlone")
Si RequestName < >"" ou RequestLeaveMeAlone < >"" alors
Response.Cookies("MySiteVisitorName") = RequestName
Response.Cookies("MySiteVisitorName").Expires = #01 janvier 2010#
Réponse.Cookies("MySiteLeaveMeAlone") = RequestLeaveMeAlone
Response.Cookies("MySiteLeaveMeAlone").Expires = #01 janvier 2010#
Terminer si
Nom du visiteur = request.cookies("MonSiteVisitorName")
LeaveMeAlone = request.cookies("MonSiteLeaveMeAlone")
Si VisitorName = "" et LeaveMeAlone = " alors
%>
< HTML > < HEAD > < /HEAD >
< body bgcolor="#ccffff" text="noir" link="marine" vlink="violet" >
< DIV ALIGN="CENTRE" >
<formulaire action="index.asp" méthode="POST" >
< H2 >Soyons amis< /H2 >
Quel est votre nom (laissez vide et cliquez sur le bouton Soumettre si vous ne souhaitez pas que nous le fassions)
savoir)?
< input type="text" name="name" >< BR >< BR >
< input type="hidden" name="LeaveMeAlone" value="x" >
< input type="submit" value="Soumettre" >
</ /FORMULAIRE >
< /DIV >
< /CORPS >
<%
Terminer si
Si Nom du visiteur < > "" alors
Response.write "Bonjour, " & VisitorName & " ! J'espère que vous passez une bonne journée !"
Terminer si
'reste de la page
%>
D'accord, regardons maintenant ce que fait l'implémentation du code ci-dessus. Tout d’abord, configurez la page. Ensuite, vérifiez la variable du formulaire (dans la même page). Si la variable de formulaire existe, créez le cookie et définissez le délai d'expiration.
< %@ LANGUAGE="VBSCRIPT" % >
<%
RequestName = Request.Form("Nom")
RequestLeaveMeAlone = Request.Form("LeaveMeAlone")
Si RequestName < >"" ou RequestLeaveMeAlone < >"" alors
Response.Cookies("MySiteVisitorName") = RequestName
Response.Cookies("MySiteVisitorName").Expires = #01 janvier 2010#
Réponse.Cookies("MySiteLeaveMeAlone") = RequestLeaveMeAlone
Response.Cookies("MySiteLeaveMeAlone").Expires = #01 janvier 2010#
Terminer si
Ensuite, lisez le cookie :
Nom du visiteur = request.cookies("MonSiteVisitorName")
LeaveMeAlone = request.cookies("MonSiteLeaveMeAlone")
Si le cookie n'existe pas sur l'ordinateur du visiteur, créez un formulaire demandant les informations pertinentes :
Si VisitorName = "" et LeaveMeAlone = " alors
%>
<HTML>
<TÊTE>
< /HEAD >
< body bgcolor="#ccffff" text="noir" link="marine" vlink="violet" >
< DIV ALIGN="CENTRE" >
<formulaire action="index.asp" méthode="POST" >
< H2 >Soyons amis< /H2 >
Quel est votre nom (laissez vide et cliquez sur le bouton Soumettre si vous ne souhaitez pas que nous le fassions)
savoir)?
< input type="text" name="nom" >< br >< br >
< input type="hidden" name="LeaveMeAlone" value="x" >
< input type="submit" value="Soumettre" >
</ /FORMULAIRE >
< /DIV >
< /CORPS >
<%
Terminer si
Si le cookie existe déjà et que le nom d'utilisateur existe, affichez un écran de bienvenue au visiteur et exécutez le reste du code.
Si Nom du visiteur < > "" alors
Response.write "Bonjour, " & VisitorName & " ! J'espère que vous passez une bonne journée !"
Terminer si
'reste de la page
%>
Bien que l’exemple ci-dessus soit simple, de nombreuses applications créatives peuvent en être étendues. Vous pouvez ajouter de nombreuses fonctionnalités à vos formulaires pour personnaliser votre site Web.
Vous pouvez également permettre aux visiteurs de personnaliser les couleurs, les polices et d'autres éléments Web de votre site. Si possible, vous pouvez demander au visiteur son anniversaire et lors de sa visite ce jour-là, vous pouvez lui afficher un message « Joyeux anniversaire ».
Comme vous pouvez le constater, l’évolutivité des cookies est infinie et cet article n’est qu’un point de départ.