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

Servlets/JSP Java Discussion :

[JSP]Problème de double soumission d'un formulaire


Sujet :

Servlets/JSP Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 199
    Par défaut
    Merci. Toi aussi.

  2. #2
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 887
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 887
    Par défaut
    Comme promis voila le code, avec le javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
      <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
      <title>SVG</title>
    </head>
    <script language="JavaScript">
     // La fonction qui récupère le contenu d'une variable de l'url
     function getVar (nomVariable)
     {
         var infos = location.href.substring(location.href.indexOf("?")+1, location.href.length)+"&"
         if (infos.indexOf("#")!=-1)
             infos = infos.substring(0,infos.indexOf("#"))+"&"
         var variable=0
         {
             nomVariable = nomVariable + "="
             var taille = nomVariable.length
             if (infos.indexOf(nomVariable)!=-1)
                 variable = infos.substring(infos.indexOf(nomVariable)+taille,infos.length).substring(0,infos.substring(infos.indexOf(nomVariable)+taille,infos.length).indexOf("&"))
         }
         return variable
     }
    </script>
    <body>
     <script language="JavaScript">
         // tu récupères tes variables
         var numid=getVar('numid');
         var denomid=getVar('denomid');
         var actionType=getVar('actionType');
     
         // puis tu écris ton code
          document.write("<EMBED name=\"map\" src="map.do?actionType="+actionType+"&numid="+numid+"&denomid="+denomid+"\" width=\"800\" height=\"600\" type=\"image/svg+xml\"> </EMBED>");
     </script>
     
    </body>
    </html>

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 199
    Par défaut
    D'abord, merci beaucoup !
    Mais est-ce que tu es sûr que ça marche parce que j'essaie le code suivant et rien ne se passe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var numid=getVar('numid');
    alert("numid : "+numid);
    pour voir si la fonction marche bien et je n'ai pas l'alerte escomptée.
    Un page blanche s'affiche et si je regarde la source, je vois tout le code que j'ai écrit (la fonction getVar d'une part et ses appels d'autre part)... mais rien ne se passe.

  4. #4
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 887
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 887
    Par défaut
    Salut, j'ai testé la fonction et elle marche.

    Pour tester le code généré, enlèves le < de <embed, et tu veras toute la ligne.

    Là je quitte le PC, bonne nuit

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 199
    Par défaut
    En fait, pour être sûre que la fonction marche bien, j'ai écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <script language="JavaScript"> 
    // La fonction qui récupère le contenu d'une variable de l'url 
    function getVar (nomVariable){
        varinfos = location.href.substring(location.href.indexOf("?")+1,location.href.length)+"&";
        if (infos.indexOf("#")!=-1){
            infos = infos.substring(0,infos.indexOf("#"))+"&";
        }
        var variable=0; 
        nomVariable = nomVariable + "=";
        var taille = nomVariable.length;
        if (infos.indexOf(nomVariable)!=-1){
            variable = infos.substring(infos.indexOf(nomVariable)+taille,infos.length).substring(0,infos.substring(infos.indexOf(nomVariable)+taille,infos.length).indexOf("&"));
        }
        return variable;
    }
    </script>
    <BODY>
    <script language="JavaScript">
        var numid=getVar('numid');
        alert("numid : "+numid);
        var denomid=getVar('denomid'); 
        alert("denomid : "+denomid);
        document.write("test");
    </script>
    </BODY>
    </HTML>
    Mais encore une fois, j'obtiens une page blanche malgré les appels :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    alert("numid : "+numid);
    alert("denomid : "+denomid);
    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.write("test");
    Est-ce que tu as une idée ?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 199
    Par défaut
    J'ai vérifié et mon url est bien la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    https://localhost:8443/svg/map.do?actionType=GENERATE&numid=2&denomid=1

  7. #7
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 887
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 887
    Par défaut
    T'as mal copié la fonction, tu as mis varinfos au lieu de var infos

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 199
    Par défaut
    Honte sur moi... Effectivement, maintenant, ça marche mieux !
    Merci à toi pour toute ton aide.
    Julie

  9. #9
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 887
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 887
    Par défaut
    You are welcome, mais ce n'est apparement qu'une solution temporaire, étant donnée qu'à l'origine il y a quand même un problème ( le double affichage ) soit dans ton code, soit un bug quelque part, dommage que nous n'ayons pas pu identifier le problème original !

    Bonne journée et bon courage
    Jean

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 199
    Par défaut
    Oui mais cette solution corrige le problème de code parcouru deux fois, ce qui est bien, puisqu'apparemment il s'agit d'un bug de IE. Et effectivement, j'ai essayé (avec mon code original) avec un autre navigateur et le code n'est alors bien parcouru qu'une seule fois... sauf que le svg ne s'affiche pas car le plugin ne fonctionne que dans IE !
    Voilà. En tout cas, merci encore. Et en espérant que ça puisse aider d'autres personnes qui rencontrent le même genre de problème...
    Julie

  11. #11
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 887
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 887
    Par défaut
    Tu as bien la dernière version du plug-in ? Peut-être ont-ils corrigé le problème depuis ?

    Et quelle version d'IE as-tu ?

    Je pense que le problème est lié au changement du content-type par défaut, mais je ne suis pas sûr..

  12. #12
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 887
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 887
    Par défaut
    Enfin l'essentiel est que ça marche maintenant, félicitations

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Double soumission d'un formulaire
    Par Laskar dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/10/2013, 15h40
  2. Réponses: 6
    Dernier message: 24/04/2013, 17h14
  3. Réponses: 0
    Dernier message: 24/01/2012, 10h29
  4. [Servlets - JSP] Problème de session
    Par the java lover dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 28/11/2011, 09h54
  5. Réponses: 3
    Dernier message: 02/07/2007, 10h16

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