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

AWT/Swing Java Discussion :

Ma condition IF s'effectue deux fois?!


Sujet :

AWT/Swing Java

Vue hybride

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

    Informations forums :
    Inscription : Mai 2007
    Messages : 146
    Par défaut Ma condition IF s'effectue deux fois?!
    B'jour!

    J'ai une bonne galère là. J'ai un formulaire qui permet soit de modifier une fiche d'adhérent, soit d'en ajouter une. Ce choix se fait en fonction d'une variable "ajout" qui prend soit la valeur false, soit la valeur true.

    Il se trouve que quand je mets la valeur à false, je parviens bien à modifier ma fiche mais la même fiche (un doublon)est crée en base de donnée.

    J'en déduis que le IF qui permet de modfier une fiche est executé et après le IF qui permet d'ajouter une fiche est aussi executé (j'en suis certain car les champs sont effacés après une "modification" et il y a une nouvelle entrée dans ma BDD...)

    Pour info, j'ai déclaré la variable ajout de la sorte:
    boolean ajout = true;


    Voici mon code, merci de m'aider

    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
    38
    39
    40
    41
    42
    43
    44
        private void boutonValiderActionPerformed(java.awt.event.ActionEvent evt) {                                              
            String numeroadherent = textboxNumeroAdherent.getText();
            String nom = textboxNom.getText();
            String prenom = textboxPrenom.getText();
            String adressePostale = textboxAdressePostale.getText();
            String codePostal = textboxCodePostal.getText();
            String ville = textboxVille.getText();
            String dateExpir = textboxDateExpir.getText();
            String password = textboxPassword.getText();
            String creditRestant = textboxCreditRestant.getText();
            String dateNaissance = textboxDateNaiss.getText();
     
        if (ajout = true){
               if (nom!=null && nom.length()!=0 && prenom!=null && prenom.length()!=0 && adressePostale!=null && adressePostale.length()!=0 && codePostal!=null && codePostal.length()!=0 && ville!=null && ville.length()!=0 && dateExpir!=null && dateExpir.length()!=0 && password!=null && password.length()!=0 && creditRestant!=null && creditRestant.length()!=0 && dateNaissance!=null && dateNaissance.length()!=0) {
     
                    Mapping.sauvegarderDonneesAdherents(nom, prenom, adressePostale, codePostal, ville, dateExpir, password, creditRestant, dateNaissance);
     
                    labelAherent.setText("Adhérent ajouté."); 
     
                    textboxNumeroAdherent.setText("");
                    textboxNom.setText("");
                    textboxPrenom.setText("");
                    textboxAdressePostale.setText("");
                    textboxCodePostal.setText("");
                    textboxVille.setText("");
                    textboxDateExpir.setText("");
                    textboxPassword.setText("");
                    textboxCreditRestant.setText("");
                    textboxDateNaiss.setText("");
                    ;
                    }
     
                else labelAherent.setText(" Remplissez tous les champs.");
     
                }
     
            else if (ajout = false) {
                System.out.println(ajout);
            Mapping.modifierDonneesAdherents(numeroadherent, nom, prenom, adressePostale, codePostal, ville, dateExpir, password, creditRestant, dateNaissance);
            labelAherent.setText("Adhérent modifié.");
     
            }
     
        }

    David

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Février 2007
    Messages
    572
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Février 2007
    Messages : 572
    Par défaut
    Oulala, c'est ca pas bon.
    J'imagine que tu voulais ecrire
    mais de toute facon, il vaut mieux l'ecrire comme ca
    idem pour le if (ajout=false).

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 146
    Par défaut
    merci beaucoup pour ta réponse.

    Cependant j'ai effectué les modifications que tu m'a suggéré mais le problème reste le même...

    As tu une autre solution à me proposer?

    Merci encore

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 146
    Par défaut
    n'est ce pas la succession de if et de else qui pose problème? Je n'en vois pas mais bon... on ne sait jamais

    Merci

  5. #5
    Membre chevronné Avatar de Claythest
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    558
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 558
    Par défaut
    divad, désolé de remuer le couteau dans la plaie, mais des erreurs de ce type sont typiquement des erreurs de personnes découvrant le Java...

    De plus, tu fais les modifications que l'on t'apporte, qui changent complètement le comportement de ton programme (ben oui, entre "== true" et "= true" la différence est énorme !!!), et tu ne sembles pas capable de comprendre la correction...

    Ce qui fait que t'aider dans ces conditions s'avère pour nous une tache très ardue... Il faudrait qu'on fasse le travail à ta place, à savoir prendre ton code et le débugguer chez nous, le corriger, puis t'expliquer toutes tes erreurs qui sont, j'en suis sûr, nombreuses...

    Alors que si tu prenais le temps le temps (ou avait pris le temps, peut être que c'est trop tard maintenant) d'apprendre les bases du Java, tout cela aurait été plus clair pour toi...

    Quoi qu'il en soit, bon courage

    Et pour ton problème, il nous manque du code pour pister la cause de ton erreur...

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 10
    Par défaut
    Salut,

    il y a aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    else if (ajout = false) {
    que tu as peut être oublié

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 146
    Par défaut
    Citation Envoyé par Claythest
    divad, désolé de remuer le couteau dans la plaie, mais des erreurs de ce type sont typiquement des erreurs de personnes découvrant le Java...

    De plus, tu fais les modifications que l'on t'apporte, qui changent complètement le comportement de ton programme (ben oui, entre "== true" et "= true" la différence est énorme !!!), et tu ne sembles pas capable de comprendre la correction...

    Ce qui fait que t'aider dans ces conditions s'avère pour nous une tache très ardue... Il faudrait qu'on fasse le travail à ta place, à savoir prendre ton code et le débugguer chez nous, le corriger, puis t'expliquer toutes tes erreurs qui sont, j'en suis sûr, nombreuses...

    Alors que si tu prenais le temps le temps (ou avait pris le temps, peut être que c'est trop tard maintenant) d'apprendre les bases du Java, tout cela aurait été plus clair pour toi...

    Quoi qu'il en soit, bon courage

    Et pour ton problème, il nous manque du code pour pister la cause de ton erreur...
    Je suis bien d'accord avec toi Mon épreuve étant demain, je n'ai pas le temps de faire grand chose d'autre

    Je laisse tomber l'erreur, je vais faire un truc moins bien mais qui fonctionne. Je n'en serais pas spécialement pénalisé je pense.

    Merci de vous être penché sur le problème!

    (Non javakool je ne l'avais pas oublié :p Mais merci de la suggestion!)

  8. #8
    Membre Expert
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Par défaut
    ça sent de plus en plus les exams en ce moment En tout cas bon courage.

Discussions similaires

  1. [AC-2003] Sélectionner deux fois le même champ avec deux conditions différentes
    Par juju1988 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 19/10/2010, 09h23
  2. [SQL] Requete me renvoyant deux fois le meme nom
    Par Pepito dans le forum Langage SQL
    Réponses: 9
    Dernier message: 14/10/2005, 14h35
  3. Lire deux fois un inputstream
    Par Guybrush dans le forum Entrée/Sortie
    Réponses: 6
    Dernier message: 05/09/2005, 14h50
  4. Réponses: 14
    Dernier message: 30/03/2005, 21h50
  5. Sélectionner un même enregistrement deux fois...
    Par Manu0086 dans le forum Langage SQL
    Réponses: 11
    Dernier message: 02/02/2004, 13h09

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