Comment faire pour état de banque dans les Applications Active Server Pages

Traductions disponibles Traductions disponibles
Numéro d'article: 175167 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Lorsque vous développez un Web ASP (Active Server Pages) application, une méthode commune pour personnaliser le contenu consiste à stocker des informations sur l'utilisateur. Il existe plusieurs façons de stocker des informations dans une page ASP environnement. Cet article répertorie les façons les plus courantes de stocker l'état, y compris les exemples de code et le professionnels de l'et inconvénients de chaque option.

Plus d'informations

Variables d'application et de session

Comment fonctionnent-ils ?

Les variables de session et application sont stockés sur le serveur. Adoptant un SessionID est généré au début d'une session ASP, est un cookie en mémoire est stocké sur le client pour identifier les variables de session. Par conséquent, le client doit avoir des cookies activés dans le navigateur pour les variables de session et application fonctionner.

Professionnels de l'informatique

  • Cette méthode est facile à implémenter.
  • Vous pouvez stocker les objets et types de variable simples (bien que ne soit pas recommandé de stocker des objets).
  • Les valeurs qui sont stockées dans des variables de session et application sont masqués pour l'utilisateur.

Cons

  • Cette méthode exige des clients cookies activés dans leur navigateur Web.
  • Cette méthode fiable ne peut pas être partagée entre les images dans un jeu de cadres ou sur plusieurs instances de navigateur.
  • Cette méthode stocke des informations sur le serveur Web. Cela diminue l'évolutivité de deux manières : variables de session et d'application utilisent des ressources sur le serveur et ils ne peut pas être utilisés sur complètement les fermes Web l'objet d'un équilibrage de charge.

Exemple

Définir la valeur d'une variable de session :
<%
   'Store information in a session variable.
   Session("myInformation") = "somevalue"
%>
				
récupérer la valeur à partir de la variable de session :
<%
    'Retrieve the information stored in the session variable.
    myValue = Session("myInformation")
%>
				

Cookies

Comment fonctionnent-ils ?

Il existe deux types de cookies : les cookies en mémoire et les cookies stockés sur disque du client. Un cookie en mémoire est une ou plusieurs paires nom-valeur sont stockées en mémoire du navigateur jusqu'à ce que le navigateur est fermé. Un cookie est stocké sur disque est un fichier sur l'ordinateur client qui contient des paires nom-valeur.

Les cookies être définies et récupérées à partir de code côté client et côté serveur.

Professionnels de l'informatique

  • Cette méthode est facile à implémenter.
  • Cette méthode peut être enregistrée sur disque pour une utilisation ultérieure (cookie basé sur le disque) en définissant simplement une date d'expiration du cookie. Cela permet le stockage entre les sessions de navigateur.

Cons

  • Le client peut modifier manuellement les cookies stockés sur le disque.
  • Cette méthode exige des clients cookies activés dans leur navigateur Web.
  • Les cookies ne peuvent pas stocker des objets.

Exemple

Stocker des informations dans un cookie :
<%
   'Set a cookie value.
   Response.Cookies("myInformation") = "somevalue"
   'Expire the cookie to save it to disk. If this is omitted, the cookie
   'will be an in-memory cookie. In this case, the cookie is set to expire
   'in twenty days.
   Response.Cookies("myInformation").Expires = now() + 20
%>
				
récupérer la valeur à partir d'un cookie :
<%
    'Retrieve the information that is stored.
    myValue = Request.Cookies("myInformation")
%>
				

Champs de formulaire masqué

Comment fonctionnent-ils ?

Chaque page a besoin d'un formulaire avec les champs de formulaire masqués qui contiennent les informations d'état. Au lieu de liaison et de redirection vers les pages, le formulaire est envoyé lorsqu'un utilisateur parcourt une autre page.

Professionnels de l'informatique

  • Cette méthode ne requiert pas de cookies.

Cons

  • Il peut être gênant pour rediriger et de lier aux pages.
  • Cette méthode ne peut pas stocker des objets.

Exemple

Stocker des informations dans les champs masqués :
<HTML>
<HEAD>
<SCRIPT LANGUAGE=javascript>
  //Function that is used to submit the links:
  function browseToUrl(url){
    form1.action=url;
    form1.submit();
  }
</SCRIPT>
</HEAD>
<BODY>

<%
  dim myInformation
  myInformation = "somevalue"  
%>

<!-- This stores the value that is set above in the hidden form field. -->
<FORM id="form1" name="form1" action="" method="post">
<INPUT type="hidden" id="myInformation" name="myInformation" value="<%= myInformation%>">  

<!-- Navigation sample that uses this technique. -->
<INPUT type="button" value="p3.asp" id=button1 name=button1 onclick='goToUrl("p3.asp");'>
</FORM>
</BODY>
</HTML>
				
récupérer la valeur du champ de formulaire masqué :
<%
    'Retrieving the information that is stored.
    myValue = Request.Form("myInformation")
%>
				

QueryString

Comment cela fonctionne-t-il ?

Lorsque vous utilisez la collection QueryString, les variables sont stockés dans l'URL sous la forme d'une paire nom-valeur. Par exemple :
http://servername/page.asp?var1=value1&var2=value2&var3=value3
				
Remarque : paires nom-valeur sont séparées par une esperluette (&).

Professionnels de l'informatique

  • Si le client insère un signet sur la page, l'état est conservé.

Cons

  • L'URL complète peut uniquement être 2083 octets.
  • Cette méthode ne peut pas stocker des objets.
  • L'URL est très long et difficile à lire.

Exemple

Stocker des informations dans la méthode QueryString :
<HTML>
<HEAD></HEAD>
<BODY>
<%
   'Function that assembles the QueryString:
   function AddToQueryString(qs, name, value)
     
     if qs="" then
       qs = name & "=" & value
     else
       qs = qs & "&" & name & "=" & value
     end if
     
     addToQueryString = qs
   end function

   dim querystring

   'Store the first value.
   querystring = AddToQueryString(querystring, "firstvar", "firstvalue")
   'Store the second value.
   querystring = AddToQueryString(querystring, "secondvar", "secondvalue")
%>

<a href="urlreceive.asp?<%=querystring%>">urlreceive.asp</a>
</BODY>
</HTML>
				
extraire les valeurs à partir de QueryString :
<%
    'Retrieve the information stored.
    myFirstValue = Request.QueryString("firstvar")
    mySecondValue = Request.QueryString("secondvar")
%>
				

Fichier et de la base de données

Comment fonctionnent-ils ?

Vous pouvez implémenter cette technique de nombreuses façons différentes. Les étapes suivantes illustrent une des façons d'implémenter le fichier et le stockage de base de données de l'état :
  1. Générer un numéro d'identification lorsque l'utilisateur se connecte tout d'abord ou parcourt une page au sein de votre application.
  2. Utiliser une des techniques de cet article pour stocker le code.
  3. Pour stocker les valeurs dans un fichier, utilisez le code comme nom de fichier. Pour stocker les valeurs dans une base de données, utilisez une combinaison de l'ID et la paire nom-valeur pour identifier l'enregistrement.
  4. Éventuellement stocker un horodatage avec la paire nom-valeur dans la base de données. Pour les fichiers, vous pouvez utiliser l'horodatage de la dernière révision.
  5. Écrire un service d'effectuer le nettoyage (fichiers et enregistrements) à certains intervalles (par exemple, toutes les 20 minutes ou toutes les nuits, selon le nombre d'utilisateurs accéder au site). Le service peut utiliser l'horodatage pour déterminer si un enregistrement a expiré.

Professionnels de l'informatique

  • Les valeurs sont complètement masqués pour l'utilisateur.
  • Si vous utilisez un partage de fichiers ou d'une base de données, cela peut servir à simuler des variables de session sur une batterie de serveurs Web.
  • Il ne nécessite pas de cookies.

Cons

  • Il stocke les données côté serveur.
  • Il peut être fastidieux à implémenter.
  • Cette méthode peut être lente car un accès base de données et le fichier est nécessaire pour stocker et récupérer les valeurs.

Références

Pour plus d'informations, consultez les articles suivants sur MSDN (Microsoft Developer Network) :
Objet de session
http://msdn2.microsoft.com/en-us/library/aa371675.aspx

Application, objet
http://msdn2.microsoft.com/en-us/library/aa210897(office.11).aspx

Cookies
Response.Cookies Collection
Request.Cookies Collection

QueryString
http://msdn2.microsoft.com/en-us/library/aa196462(office.11).aspx
Pour plus d'informations, cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la base de connaissances Microsoft :
244465Comment faire pour désactiver l'état de session ASP dans des pages ASP
178037PRB : Variables de session sont perdues lorsque les pages ASP sont situées dans un jeu de cadres
Pour obtenir les derniers articles de la base de connaissances ou d'autres informations sur Visual InterDev et Active Server Pages, consultez la page suivante sur le site support technique Microsoft :
http://support.microsoft.com/search/default.aspx?qu=vinterdev

Propriétés

Numéro d'article: 175167 - Dernière mise à jour: vendredi 9 mars 2007 - Version: 3.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Active Server Pages 4.0
Mots-clés : 
kbmt kbaspobj kbcodesnippet kbhowto kbscript KB175167 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 175167
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Exclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com