|
GRUPOS DE DISCUSSÃO PROFISSIONAL WINDEV, WEBDEV e WINDEV Mobile |
| | | | | |
Gestion de la fermeture de session |
Iniciado por ludovic;berthon, jan., 16 2004 4:48 PM - 6 respostas |
| |
| | | |
|
| |
Publicado em janeiro, 16 2004 - 4:48 PM |
Je suis abonné aux LST de PCSOFT depuis janvier 2003 (LST52), et je cherche à gérer la fermeture des sessions utilisateurs sur le serveur lorsqu'ils ferment leur navigateur. Apparemment la solution a été donnée par pcsoft dans la LST 51, quelqu'un aurait-il l'exemple du code utilisé à me fournir.
Merci d'avance.
Ludo |
| |
| |
| | | |
|
| | |
| |
Publicado em janeiro, 19 2004 - 10:20 AM |
Slt Ludo
Sur le laser de la LST il y a un répertoire d'archive contenant les 3 dernières LST (notamment les exemples). Regarde sur le livret normalement ils indiquent le chemin pour les décompresser (du moins c'était le cas il y a 2 ans).
A+
Alain V
"ludovic Berthon" <ludovic;berthon@sofedis.fr;> a écrit dans le message de news:4007fa72@news....
Je suis abonné aux LST de PCSOFT depuis janvier 2003 (LST52), et je cherche à gérer la fermeture des sessions utilisateurs sur le
serveur
lorsqu'ils ferment leur navigateur. Apparemment la solution a été donnée par pcsoft dans la LST 51, quelqu'un aurait-il l'exemple du code utilisé à me fournir.
Merci d'avance.
Ludo
|
| |
| |
| | | |
|
| | |
| |
Publicado em janeiro, 23 2004 - 1:02 PM |
Alain, j'ai intégré dans mon projet les principes que tu as utiliser pour détecter la fermeture de la session par la croix du navigateur et cela fonctionne tres bien. Pour rappel il s'agit de mettre dans le code OnUnload d'un frame de la page, l'appel à une page de fermeture dont le seul but est d'executer une procedure serveur pour finaliser la fermeture de session.
Mon souci aujourd'hui est que ceci s'execute lors de la fermeture par la croix, tres bien, mais egalement lors de l'actualisation de la Page (btn actualiser ou F5) ce qui est problematique.
Peut etre a tu remarqué ceci sur ton propre site et trouvé une parade?
"SFCI Conseil - Alain V" <sfci.conseil_NoSpam@wanadoo.fr> |
| |
| |
| | | |
|
| | |
| |
Publicado em janeiro, 23 2004 - 5:49 PM |
Slt Christophe.
En fait le principe est simple.
A L'initialisation de ta frame concernée tu mets à jour un champ invisible (Chp_Deconnection) à "O" (Oui) puis dans le code navigateur de tes boutons par exemple tu mets le même champ à "N" (Non) puis dans le code serveur tu le mets à "O" (un bouton soumet au serveur, donc ta frame se ferme = "N je ne veux pas déconnecter la session. Puis tu traite ton code sur le serveur avec une recréation de ta page par le serveur mais le contexte est toujours présent => lors de la ré-apparition sur le navigateur le serveur mets à O ton champs => imitation de l'initialisation).
Comme le code de fermeture se trouve dans un code navigateur tu contrôle le champ (dynamique bien entendu) et tu autorises la déconnection si Chp_Deconnection est à "O".
En fait pour plus de simplicité il faut une seule frame cachée (1 pixels) dans lequel tu mets un code de déconnection sans contrôler puisque la frame caché à pour but de ne jamais se fermer sauf lors de la fin de l'utilisation ou au cours d'une déconnexion sauvage (par la X) : dans ce cas tu peux te passer de ce que je viens d'écrire (et c'est beaucoup moins lourd).
Mais comme pour tout les premiers projet on ne songe pas à utiliser les frames support.
Alain V
"Christophe" <christophe.bar@edi.fr> a écrit dans le message de news:4011009b@news....
Alain, j'ai intégré dans mon projet les principes que tu as utiliser pour détecter la fermeture de la session par la croix du navigateur et cela
fonctionne > tres bien. Pour rappel il s'agit de mettre dans le code OnUnload d'un frame
de la page, l'appel à une page de fermeture dont le seul but est d'executer
une procedure serveur pour finaliser la fermeture de session.
Mon souci aujourd'hui est que ceci s'execute lors de la fermeture par la croix, tres bien, mais egalement lors de l'actualisation de la Page (btn actualiser ou F5) ce qui est problematique.
Peut etre a tu remarqué ceci sur ton propre site et trouvé une parade?
"SFCI Conseil - Alain V" <sfci.conseil_NoSpam@wanadoo.fr>
|
| |
| |
| | | |
|
| | |
| |
Publicado em janeiro, 28 2004 - 11:58 AM |
Alain, merci pour les conseils que j'ai appliqué mais qui resolve que partielement mon probleme. En effet, le coup de la frame invisible qui detecte la fermeture ne pose aucun probleme tant que l'utilisateur ne decide pas d'actualiser son navigateur. En effet dans ce cas on ne clic pas sur la Croix mais le resultat est le meme, le frame est decharger et recharger et donc la session ce ferme.
Donc Pb, comment differencier le Clic sur la Croix du Bouton Actuliser ou F5 ?? |
| |
| |
| | | |
|
| | |
| |
Publicado em janeiro, 28 2004 - 11:58 AM |
Alain, merci pour les conseils que j'ai appliqué mais qui resolve que partielement mon probleme. En effet, le coup de la frame invisible qui detecte la fermeture ne pose aucun probleme tant que l'utilisateur ne decide pas d'actualiser son navigateur. En effet dans ce cas on ne clic pas sur la Croix mais le resultat est le meme, le frame est decharger et recharger et donc la session ce ferme.
Donc Pb, comment differencier le Clic sur la Croix du Bouton Actuliser ou F5 ?? |
| |
| |
| | | |
|
| | |
| |
Publicado em janeiro, 28 2004 - 5:12 PM |
Slt Christophe
En effet, s'il réactualise le site on change de session donc ce n'est plus le même internaute (règle de base : tu es sur un site et tu décide d'aller sur un autre site => tu tape l'URL dans la ligne d'adresse et tu reste ainsi dans le même navigateur).
On considère donc que s'il y changement de l'URL (et l'administrateur WEBDEV le comprend ainsi puisque tu verra l'ID utilisateur changer => fait le test sur ta machine de développement) => dans ce cas on ferme la page en cours (toute la frameset) donc on ferme aussi la session puisque WEBDEV l'abandonne.
Le "rafraîchissement" de page joue le même rôle qu'un changement d'URL.
Donc le système de fermeture de session mis en place joue parfaitement son rôle. Tu peux tester le principe sur différent site sur internet : navigue sur qq page puis réactualise, tu remarquera alors une perte d'information ou un retour à la page d'accueil (ce qui se passe avec WEBDEV) sauf si du site principal tu vas sur un autre site qui respecte parfaitement la charte graphique du site principal (un des moyens de résoudre qq problèmes technique matériel pour orienter sur un autre serveur)
Il faut bien savoir qu'un "rafraîchissement de page" sur internet rappel assez souvent la page d'accueil. Techniquement tu ne peux pas décider d'intercepter ce "rafraîchissement" pour dire à l'internaute : "je t'interdit de rafraîchir sinon je fait tout sauter".
Il y a peu d'être d'autres personnes qui pourraient te présenter plus clairement la notion de "rafraîchissement" de page par les icônes de navigateurs (IE, Mozilla, NetScape...).
J'espère être resté clair dans mes explications pas franchement évidentes.
A +
Alain V
"Christophe" <christophe;bar@edi.fr;;> a écrit dans le message de news:4017892a@news.pcsoft.fr...
Alain, merci pour les conseils que j'ai appliqué mais qui resolve que
partielement > mon probleme. En effet, le coup de la frame invisible qui detecte la fermeture
ne pose aucun probleme tant que l'utilisateur ne decide pas d'actualiser son navigateur. En effet dans ce cas on ne clic pas sur la Croix mais le resultat est le meme, le frame est decharger et recharger et donc la session
ce ferme.
Donc Pb, comment differencier le Clic sur la Croix du Bouton Actuliser ou F5 ??
|
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|