Recommandé: interprétation de la façon d'utiliser correctement les variables d'objet de session dans ASP Quiconque utilise ASP sait qu'un objet de session stocke les informations nécessaires à une session utilisateur spécifique, et lorsqu'un utilisateur saute entre les pages de l'application, les variables stockées dans l'objet de session ne sont pas effacées et ces variables sont toujours présentes lorsque l'utilisateur accède à la page de l'application. Il peut réduire la complexité du programme et améliorer l'efficacité de la programmation, mais il présente également de nombreuses lacunes.
1. Attributs1. Sessionid
La propriété SessionID renvoie l'identité de session de l'utilisateur. Lors de la création d'une session, le serveur génère une identité distincte pour chaque session. L'identifiant de session est renvoyé comme le type de données allongé. Dans de nombreux cas, SessionID peut être utilisé pour les statistiques d'enregistrement des pages Web.
2. Timeout
La propriété de délai d'expiration spécifie un délai de délai de délai pour l'objet de session de l'application en quelques minutes. Si l'utilisateur ne rafraîchit pas ou ne demande pas de page Web au cours de cette période de délai, la session se terminera.
2. Méthode
Il n'y a qu'une seule méthode pour les objets de session, qui est abandonné. La méthode d'abandon supprime tous les objets stockés dans les objets de session et libère la source de ces objets. Si vous n'appelez pas explicitement la méthode d'abandon, le serveur supprimera ces objets une fois que la session a expiré. Lorsque le serveur a terminé le traitement de la page actuelle, l'exemple suivant libère l'état de session.
<% Session.abandon%>
Iii. Événements
L'objet de session a deux événements qui peuvent être utilisés lorsque l'objet de session est démarré et que la sortie est exécutée.
1. L'événement Session_onstart se produit lorsque le serveur crée une nouvelle session. Le serveur traite le script avant d'exécuter la page demandée. L'événement Session_onstart est le meilleur moment pour définir les variables de session, car ils sont définis avant d'accéder aux pages.
Bien que l'objet de session reste lorsque l'événement Session_onstart contient des appels de méthode de redirection ou de fin, le serveur arrêtera le traitement du fichier global.asa et déclenchera le script dans le fichier qui déclenche l'événement Session_onstart.
Pour s'assurer que l'utilisateur démarre toujours une session lors de l'ouverture d'une page Web spécifique, la méthode de redirection peut être appelée dans l'événement Session_onstart. Lorsque l'utilisateur entre dans l'application, le serveur crée une session pour l'utilisateur et traite le script d'événement Session_onstart. Vous pouvez inclure le script dans cet événement pour vérifier si la page ouverte par l'utilisateur est une page de démarrage, et sinon, demandez à l'utilisateur d'appeler la méthode de réponse.redirect pour démarrer la page Web. La procédure est la suivante:
<ScripTrunat = ServerLanguage = VBScript>
SUBSESSION_ONSTART
startpage = / myapp / starthere.asp
currentPage = request.servervariables (script_name)
ifstrComp (CurrentPage, startpage, 1) puis
Réponse.redirect (startpage)
endire
Fin
</cript>
Les programmes ci-dessus ne peuvent fonctionner que dans les navigateurs qui soutiennent les cookies. Étant donné que les navigateurs qui ne prennent pas en charge les cookies ne peuvent pas renvoyer sessionidcookies, le serveur crée une nouvelle session chaque fois qu'un utilisateur demande une page Web. De cette façon, pour chaque serveur de demande, le script Session_onstart sera traité et l'utilisateur sera redirigé vers la page de démarrage.
2. L'événement Session_onend se produit lorsque la session est abandonnée ou chronométrée.
En ce qui concerne les questions auxquelles il faut faire attention lors de l'utilisation d'objets de session, veuillez vous référer à l'article précédent.
La session peut être lancée dans les trois manières suivantes:
1. Un nouvel utilisateur demande l'accès à une URL qui identifie le fichier .asp dans une application, et le fichier global.asa de l'application contient le processus Session_onstart.
2. L'utilisateur stocke une valeur dans l'objet de session.
3. L'utilisateur a demandé un fichier .asp de l'application et le fichier global.asa de l'application utilise la balise <objet> pour créer une instance d'un objet avec une portée de session.
Si l'utilisateur ne demande ni ne rafraîchit des pages dans l'application dans le délai spécifié, la session se terminera automatiquement. La valeur par défaut de cette période est de 20 minutes. Les paramètres de limite de délai d'expiration par défaut pour une application peuvent être modifiés en définissant la propriété Session Timeout dans la page de propriété Options d'application dans Internet Service Manager. Cette valeur doit être définie en fonction des exigences de votre application Web et de l'espace mémoire du serveur. Par exemple, si vous souhaitez que les utilisateurs parcourent votre application Web pour rester sur chaque page pendant quelques minutes, vous devez raccourcir la valeur de délai de temps par défaut pour votre session. Une valeur de délai d'expiration trop longue provoquera trop de sessions ouvertes et épuisera les ressources de mémoire de votre serveur. Pour une session spécifique, si vous souhaitez définir une valeur de délai d'expiration inférieure à la valeur de délai d'expiration par défaut, vous pouvez définir le délai d'expiration de l'objet de session. Par exemple, le script suivant définit la valeur de délai d'expiration à 5 minutes.
<% Session.Timeout = 5%>
Bien sûr, vous pouvez également définir une valeur de délai d'expiration supérieure au paramètre par défaut. La propriété Session.Timeout détermine la valeur de délai d'expiration. Vous pouvez également terminer explicitement une session via la méthode Abandon de l'objet de session. Par exemple, fournissez un bouton de sortie dans le tableau, en définissant le paramètre d'action du bouton sur l'URL du fichier .asp contenant les commandes suivantes.
<% Session.abandon%>
Partager: comment ASP empêche les soumissions répétées de formes Les utilisateurs rencontrent souvent des situations inattendues lors de la soumission de formulaires, comme rafraîchir la page plusieurs fois, en appuyant sur la touche arrière, etc. Si les mesures de contrôle ne sont pas prises, cela entraînera le problème de la soumission répétée du formulaire. La méthode de prévention introduite dans cet article est principalement composée de quatre sous-programmes. Dans des applications relativement simples, il vous suffit de placer ces codes dans le fichier inclus et de les référencer directement; pour ceux