IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Ouvrir une adresse dans une seule fenêtre


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Avatar de efficks
    Inscrit en
    Septembre 2005
    Messages
    712
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 712
    Points : 776
    Points
    776
    Par défaut Ouvrir une adresse dans une seule fenêtre
    Je développe une application complexe axée sur une interface web. Je souhaite que les utilisateurs puissent ouvrir l'adresse de l'application qu'une seule fois et que s'ils ouvrent une nouvelle instance d'Internet Explorer qui pointe sur l'application, un message l'informe qu'il ne peut pas et ferme sa fenêtre.
    Je suis avec Internet Explorer, les cookies sont autorisés.

    J'ai essayer une solution :
    Créer un cookie quand la première fenêtre ouvre. Je n'ai pas mis d'expiration ce qu'il fait qu'il existe que pour la session de la fenêtre en cours. Le problème c'est que ce cookie existe seulement pour la fenêtre en cours et non pas les autres fenêtres comme je n'ai pas d'expiration.

    Avez vous d'autres idées :

    Merci

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 24
    Points : 25
    Points
    25
    Par défaut
    Bonsoir,
    en quoi est développée ton application ?
    Si l'ouverture de IE pointe sur ton appli alors cela peut être assez simple. Dans le cas d'un serveur d'appli Java par exemple, il te suffirait d'incrémenter une variable globale lors d'une ouverture de session et de la tester à chaque requète sur l'url...

  3. #3
    Membre actif Avatar de AurelBUD
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    202
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2004
    Messages : 202
    Points : 212
    Points
    212
    Par défaut
    Si par exemple tu utilise du php coté serveur, tu peux tres bien stocker dans une variable de session le nombre de fenetre que tu ouvres et n'autorisez qu'un certain nombre de fenetre d'ouvertes (dans ton cas 1 ...)

  4. #4
    Membre éclairé
    Avatar de efficks
    Inscrit en
    Septembre 2005
    Messages
    712
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 712
    Points : 776
    Points
    776
    Par défaut
    Je suis en ASP.net
    Le problème avec les variables de session c'est que la session n'existe que pour l'instance d'Internet Explorer ouverte. Si l'on ouvre une deuxième fois le programme, c'est une autre session qui s'ouvre.

  5. #5
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    teste l'IP; si elle est enregistrée une fois, refuse la nouvelle connexion;
    :

  6. #6
    Membre éclairé
    Avatar de efficks
    Inscrit en
    Septembre 2005
    Messages
    712
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 712
    Points : 776
    Points
    776
    Par défaut
    Je ne peux pas me permettre d'enregistrer le IP car l'application étant très critique, si une panne survient et que le IP n'est pas retirer de la liste des IP, l'utilisateur ne peut plus se connecter. L'avantage de la session c'est qu'elle était supprimée automatiquement.

  7. #7
    Membre éclairé
    Avatar de efficks
    Inscrit en
    Septembre 2005
    Messages
    712
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 712
    Points : 776
    Points
    776
    Par défaut
    Donc... pas de solution?

  8. #8
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    L'avantage de la session c'est qu'elle était supprimée automatiquement.
    ... mais comme tu l'as dit, les sessions ne sont pas la solution pour tester le noubre de fenêtres ouvertes...

  9. #9
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    j'ai le problème sur une appli et je le gère simplement par un window.open();
    c'est fragile et fiable à la fois:

    le paramètre title de open(), qui en général ne sert pas à grand chose, est une référence unique, quel que soit le nombre de fenêtres ouvertes par navigateur; bref, si tu fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.open("mapage.asp","appli");
    "appli" ne peut exister une deuxième fois... donc, en cas de nouvelle ouverture de session, la première fenêtre sera tout simplement fermée;

    par ailleurs, il te faut contrôler l'accès à la page en question; par exemple, vérifie côté serveur le referrer: s'il ne correspond pas à la page d'accès, refuse la connexion;

    tu vois ce que je veux dire?

Discussions similaires

  1. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  2. portée d'une variable dans une fonction dans une méthode
    Par laurentg2003 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2009, 19h05
  3. [POO] dans une classe, appeler une fonction dans une méthode
    Par arnaudperfect dans le forum Langage
    Réponses: 3
    Dernier message: 26/08/2007, 23h04
  4. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo