[VB.NET] Fermeture du navigateur et fin de session

Signaler
Messages postés
12
Date d'inscription
mercredi 9 août 2006
Statut
Membre
Dernière intervention
27 avril 2007
-
werdDomain
Messages postés
61
Date d'inscription
lundi 22 octobre 2007
Statut
Membre
Dernière intervention
1 novembre 2011
-
Bonjour,

pour mon site Web lorsque mon utilisateur se déconnecte ou quitte le navigateur, j'ai besoin d'effectuer plusieurs actions (fin de session, libération de licences, etc...).
Pour cela, je voudrais qu'à la fermeture du navigateur l'utilisateur soit redirigé vers une page qui gèrera la déconnexion.

J'ai pas mal cherché et j'ai trouvé un bout de code pas mal, mais hélas pour moi ça ne fonctionne pas.
Je sais que je passe dans le JavaScript car j'ai fait afficher un message, mais pas d'ouverture de ma fenêtre :
<!-- BEGIN TEMPLATE: bbcode_code -->

<

body
onbeforeunload="return window_onbeforeunload()">function window_onbeforeunload()
{
  alert('je passe dedans');
  window.location.href="~/Disconnect.aspx";
   alert('je passe dedans après');
}

<!-- END TEMPLATE: bbcode_code -->
Je tiens à préciser que j'ai fait ce bout de code dans la Master Page du site car il n'y a qu'à cet endroit que je peux atteindre la balise body.
En effet ma master page contient un ContentPlaceHolder dans lequel sont mis tous les éléments des pages liées à la Master Page.
Merci par avance de votre aide.

<!-- / message -->

3 réponses

Messages postés
540
Date d'inscription
dimanche 29 décembre 2002
Statut
Modérateur
Dernière intervention
13 mai 2011

Execute le traitement dans Session_End de ton module (Global.asax ou autres) c'est largement mieux non ? (et c'est executé sur le serveur !).
Bref t'attend pas à ce que les utilisateurs attendent ta page de déconnexion !

Poppyto
Messages postés
20
Date d'inscription
mercredi 7 avril 2004
Statut
Membre
Dernière intervention
1 avril 2007

salut

ben moi personnelement j'ai met un lien de déconnection vers une page bye.aspx et quand elle se charge j'éxecute ce code la

Private
Sub Page_Load(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles
MyBase.Load                

Session.Abandon()                Session.RemoveAll()

' apres en le redirige vers la page d'authentification 

'mais il ya un seul prob !!!! quand je met précédant sa s'affiche
            Response.Redirect("login.aspx")

End
Sub
Messages postés
61
Date d'inscription
lundi 22 octobre 2007
Statut
Membre
Dernière intervention
1 novembre 2011

je sait que sa date de 2006, mais pour ceux qui cherche comment savoir quand l'utilisateur quitte une page au niveau du serveur, jai fait un petit contrôle facile a utilisé.
vous n'avez qu'a rajouter le contrôle web qui a à cette page, et déposé votre code sous l’événement(EVENT) Iexit.WindowIsClosed .
sa indique quand l'utilisateur change de page aussi, donc prévoyez un-peut de code au cas ou il clique sur vos lien ^^

cette function utilise les callBack.

bonne prog a tous