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 :

soumission formulaire


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2004
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 113
    Points : 54
    Points
    54
    Par défaut soumission formulaire
    Bonjour,
    Une petite question de formulaire que me bloque:
    J'ai donc un formulaire, avec un bouton submit. Je souhaite traiter 2 cas, selon une condition:
    - 1er cas : je soumets le formulaire, un traitement (insertion de données dans une base) se lance mais je veux conserver ma page actuelle sans aucune autre nouvelle fenetre
    -2ème cas : je soumets le formulaire, un traitement (insertion de données dans une base) se réalise et une nouvelle fenetre s'ouvre pour afficher mes résultats
    Je ne sais pas ou mettre mon traitement "arrière" (insertion dans la base), je l'avait mis dans un fichier appelé dans la balise form (action) mais dans ce cas il m'ouvre toujours une nouvelle page...
    Je ne sais pas si je suis très claire...
    Si quelqu'un a une idée...
    Merci

  2. #2
    Membre averti
    Avatar de Strab
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    338
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 338
    Points : 330
    Points
    330
    Par défaut
    Il faut faire un peu de Javascript.

    Ne crée aucun bouton submit, et met deux boutons "normaux" qui appellent chacun une fonction javascript différente. L'une ouvre une nouvelle fenêtre, pas l'autre, et les deux se terminent par un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    lenomduform.submit();
    Si tu veux effectuer un traitement différent suivant le bouton cliqué, change avant le submit l'action du formulaire avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    lenomduform.action = pagedetraitement;
    Oui ?

  3. #3
    Membre du Club
    Inscrit en
    Décembre 2004
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 113
    Points : 54
    Points
    54
    Par défaut
    Merci pour ta réponse,
    j'étais en train d'essayer mais j'ai toujours un problème:
    quand je fais mon submit, il me change ma page d'origine par le fichier qui contient l'action (insertion) que je veux réaliser avec la soumission de mon form. Je souhaiterais juste que mon fichier s'exécute sans rien changer. Sauf dans un cas: affichage de résultats dans la nouvelle fenetre que j'ai créé. A noter qu'il faut que mon premier traitement soit réalisé avec l'affichage dans ma nouvelle fenêtre...
    Voila...

  4. #4
    Membre averti
    Avatar de Strab
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    338
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 338
    Points : 330
    Points
    330
    Par défaut
    Un exemple vaut mieux qu'un long discours :
    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
     
    <!-- fichier mapage.php -->
    <script>
    function aff_result(){
       leform.aff.value="1";
       leform.submit();
    }
    </script>
     
    <? if(isset($_POST["valider"])){
            include("inserer.php");
            if($_POST["aff"] == "1"){ ?>
                <script>
                   window.open("resultats.php"); // j'ai oublié la syntaxe de cette fonction
                </script>
    <?    }
         }
    ?>
     
    <form name="leform" action="mapage.php" method="post">
        <input .../>
        <input .../>
        ...
        <input type="hidden" name="aff" value="0" />
        <input type="submit" name="valider" value="Valider" />
        <input type="button" onclick="javascript:aff_result()" value="Afficher" />
    </form>
    Tu vois le truc ?

  5. #5
    Membre du Club
    Inscrit en
    Décembre 2004
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 113
    Points : 54
    Points
    54
    Par défaut
    Merci pour ton exemple, je vois à peu près ce que tu veux faire mais cela ne convient pas trop chez moi... il faut que je refléchisse....

Discussions similaires

  1. [MVC] Soumission formulaire spring avec annotation
    Par riderfun dans le forum Spring Web
    Réponses: 1
    Dernier message: 26/03/2010, 16h17
  2. Problème soumission formulaire
    Par scorpio17 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 12/08/2009, 10h54
  3. Concurrence soumission formulaires entre JS et bouton submit
    Par curunir dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 16/07/2009, 14h22
  4. Réponses: 1
    Dernier message: 19/10/2007, 08h55
  5. [Dojo] Soumission formulaire
    Par Givemefive dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 01/03/2007, 16h44

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