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

Développement Web en Java Discussion :

mon code de modification ne marche pas


Sujet :

Développement Web en Java

  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 115
    Points : 93
    Points
    93
    Par défaut mon code de modification ne marche pas
    Bonjour je suis actuellement en stage dans une entreprise de développement informatique ils m'ont donné la tache de programmer une application de gestion des cartes d'abonnements des trains de l'oncf , bref tout allé bien jusqu'à ce que je bloc sur cette erreur bon voilà je m'explique j'ai crée une interface qui permet au administrateur de crée des vendeurs ( vendeurs de cartes d'abonnement des trains) voici l'interface :

    Nom : openclassroom1.PNG
Affichages : 133
Taille : 36,9 Ko

    voici mon code jsp :


    Code jsp : 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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <link href="Css/Css_creation_vendeur.css" rel="stylesheet">
            <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
            <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
            <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
     
            <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
            <title>JSP Page</title>
        </head>
        <body>
            <div id="header_creation_vendeur">
                <h2>Creation vendeur</h2>
            </div>
     
            <form method="post" action="Creation_vendeur">
     
                <input type="hidden" name="action" value="ajouter"/>
                <input type="hidden" value="modifier" name="action"/>
            <div id="div_cv1">
                <div class="form-group form-inline">
                <label>Matricule</label>
                <input type="text" name="matricule" class="form-control form-control-md" id="matricule"/>
                 <input type="submit" class="btn btn-warning btn-lg"  action="" value="Rechercher" id="rech">
                </div>
            </div>
     
            <div id="div_cv2">
                <div class="form-group form-inline">
                <label>Matricule</label>
                <input type="text" name="matricule2" class="form-control form-control-md" id="matricule2"/>
                </div>
     
                <div class="form-group form-inline">
                <label>Login</label> 
                <input type="text" name="logincv" class="form-control form-control-md" id="logincv"/> 
                </div>
     
                <div class="form-group form-inline">
                <label>Mot de passe</label>
                <input type="password" name="password" class="form-control form-control-md" id="password"/> 
                </div>
     
     
                <div class="form-group form-inline">
     
                    <label>Role</label>
     
                    <div class="form-check-input">
     
                        <input type="radio" class='form-check-input' value="2" name='radio' id="radiovendeur"/>
     
                    </div>
     
                    <label class="form-check-label">
                            Vendeur
                    </label>
     
                    <div class="form-check-input">
     
                        <input type="radio" class='form-check-input' value="1"  name='radio' id="radioadmin"/>
     
                    </div>
     
                    <label class="form-check-label">
                            Administrateur
                    </label>
                </div>
     
     
                <div class="form-group form-inline">
     
                    <label>Etat</label>
     
                    <div class="form-check-input">
     
                         <input type="radio" class='form-check-input' value="0"  name='radio2' id="radioactif"/>
     
                    </div>
     
                    <label class="form-check-label">
                            Actif
                    </label>
     
                    <div class="form-check-input">
     
                         <input type="radio" class='form-check-input' value="1" name='radio2' id="radioinactif"/>
     
                    </div>
     
                    <label class="form-check-label">
                            Inactif
                    </label>
     
     
                </div>
            </div>
     
            <div id="buttoncv">
                <div class="form-group form-inline">
     
                    <input type="submit" class="btn btn-warning btn-lg"   action="ajouter" value="Ajouter">
                   <input type="reset" class="btn btn-warning btn-lg"   value="Effacer">
                   <input type="submit" class="btn btn-warning btn-lg"  action="modifier" value="modifier">
                </div>
            </div>
     
            </form>
        </body>
    </html>

    J'ai crée une servlet ou je souhaite mettre tout mon code ( d'ajout , modification , recherche) c'est pour celà que j'ai mis pour le moment 2 input de type hidden voici ma servlet :


    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    @Override
        protected void doPost(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            String matricule2=request.getParameter("matricule2");
            String logincv=request.getParameter("logincv");
            String password=request.getParameter("password");
            String radio= request.getParameter("radio");
            String radio2=request.getParameter("radio2");
     
            Connection c=cnx.getcnx();
            if(request.getParameter("action").equals("ajouter")){
     
                try {
                PreparedStatement st=c.prepareStatement("insert into vendeurs values (null,?,?,?,null,null,?,null)",Statement.RETURN_GENERATED_KEYS);
                st.setString(1, logincv);
                st.setString(2, password);
                st.setString(3, matricule2);
                st.setString(4, radio2);
                st.executeUpdate();
                    int key=-1;
                ResultSet rs = st.getGeneratedKeys();
                if (rs.next()) {
                    key = rs.getInt(1);
                }
                System.out.print(key);
     
                PreparedStatement st1=c.prepareStatement("insert into vendeurinroles values (null,?,?)");
                st1.setInt(1, key);
                st1.setInt(2, Integer.parseInt(radio));
                int res=st1.executeUpdate();
     
                if(res>0){
                    System.out.println("ajouter avec succes");
                }
     
                else {
                    System.out.println("erreur");
                }
            }
     
            catch(Exception ex){
                ex.printStackTrace();
            }
     
            }
     
     
            else if(request.getParameter("action").equals("modifier")){
                try{
                    PreparedStatement stm=c.prepareStatement("update vendeurs set login=? , password=? , isactive=? where matricule=?",Statement.RETURN_GENERATED_KEYS);
                    stm.setString(1, logincv);
                    stm.setString(2, password);
                    stm.setString(3, radio2);
                    stm.setString(4, matricule2);
                    stm.executeUpdate();
     
                    int keym=-1;
                ResultSet rs = stm.getGeneratedKeys();
                if (rs.next()) {
                    keym = rs.getInt(1);
                }
                System.out.print(keym);
     
     
                PreparedStatement stm2=c.prepareStatement("update vendeurinroles set role_id=? where vendeur_id=?");
                stm2.setInt(1, Integer.parseInt(radio));
                stm2.setInt(2, keym);
                int resmodification=stm2.executeUpdate();
                    if(resmodification>0){
                        System.out.println("Modifier avec succes");
                    }
                    else {
                    System.out.println("erreur");
                    }
                }
                catch(Exception ex){
                ex.printStackTrace();
            }
            }
     
     
     
            getServletContext().getRequestDispatcher("/WEB-INF/Creation_vendeur.jsp").forward(request, response);
        }
    Pour que vous comprenez trés bien j'ai 2 tables la premiere vendeurs la voici :

    Nom : openclassroom2.PNG
Affichages : 130
Taille : 31,2 Ko

    et la table vendeurinroles la voici :

    Nom : openclassroom3.PNG
Affichages : 136
Taille : 10,6 Ko

    comme vous le vouyez le role il n'est pas dans la table vendeurs mais bien dans la table vendeurinroles c'est pour celà que dans l'insertion par exemple j'insert dans la table vendeurs on récupérent l'id du vendeur inserer et apres j'insere au vendeurs crée un role dans la table vendeurinroles avec l'id que j'ai récupére c'est pour cela que j'ai mis ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    int key=-1;
                ResultSet rs = st.getGeneratedKeys();
                if (rs.next()) {
                    key = rs.getInt(1);
                }
    bref j'espere que vous m'aviez compris, bon passent au probléme maintenant :

    le premier c'est que meme si je clic sur le bouton modifier il m'execute le code de l'ajout meme si j'ai mis la condition : else if(request.getParameter("action").equals("modifier")){

    il ne sors pas de la premier condition qui est de l'ajout.

    le deuxieme probleme c'est que meme si je met le code de l'insertion en commentaire il passe a la deuxieme condtion qui est de la modification oui mais il ne me modifie rien il m'affiche :

    Infos: -1

    Infos: erreur

    ce qui signifie qu'il y a une erreur dans mon code mais je ne sais pas laquel !!!

    svp si quelqu'un peut m'aider le plus tot possible !!!

    et merci beaucoup en avance !

  2. #2
    Membre expérimenté Avatar de supergeoffrey
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2010
    Messages
    795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2010
    Messages : 795
    Points : 1 685
    Points
    1 685
    Par défaut
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="hidden" name="action" value="ajouter"/>
                <input type="hidden" value="modifier" name="action"/>

    Ton problème doit venir de ça.

    Les champs cachés sont toujours envoyés
    Pensez à marquer vos tickets comme résolus.
    Pensez aussi aux pour les réponses pertinantes

    Quand une discution est résolue depuis un moment pour revenir dessus, il est mieux d'en crée une nouvelle avec un lien vers l'autre car :
    • Elle sera en haut du forum, elle sera donc plus visible
    • Une discussion résolue, on ne passe pas dessus pour aider, on passe dessus si on a le même problème
    • Tu demandes surement à tes clients de faire le même

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 115
    Points : 93
    Points
    93
    Par défaut
    Et c'est quoi la solution stp ? pourtant le bouton ajouter marche trés bien aide moi plz je dois livré cette tache à mon encadrent le plus vite possible je te serais trés reconnaissent



    Citation Envoyé par supergeoffrey Voir le message
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="hidden" name="action" value="ajouter"/>
                <input type="hidden" value="modifier" name="action"/>

    Ton problème doit venir de ça.

    Les champs cachés sont toujours envoyés

  4. #4
    Membre expérimenté Avatar de Cincinnatus
    Homme Profil pro
    Développeur d'applications métier
    Inscrit en
    Mars 2007
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur d'applications métier
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 592
    Points : 1 679
    Points
    1 679
    Par défaut
    Salut,

    1 - tu vires les champs cachés "hidden".
    2 - tu fais en sorte que tes submit remplissent le champ "action" de ton formulaire au lieu d'utiliser un pseudo-attribut 'action' (?).

  5. #5
    Membre expérimenté Avatar de supergeoffrey
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2010
    Messages
    795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2010
    Messages : 795
    Points : 1 685
    Points
    1 685
    Par défaut
    Salut,

    Je pensais que tu aurais compris je vais t'expliquer.

    A supprimer :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="hidden" name="action" value="ajouter"/>
    <input type="hidden" value="modifier" name="action"/>

    ____

    Remplacer:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <input type="submit" class="btn btn-warning btn-lg"   action="ajouter" value="Ajouter">
    <input type="reset" class="btn btn-warning btn-lg"   value="Effacer">
    <input type="submit" class="btn btn-warning btn-lg"  action="modifier" value="modifier">

    Par:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <input type="submit" name="action" class="btn btn-warning btn-lg" value="Ajouter">
    <input type="reset" class="btn btn-warning btn-lg"   value="Effacer">
    <input type="submit" name="action"  class="btn btn-warning btn-lg"  value="modifier">

    _____

    En fait un champs de type hidden est toujours envoyé à ton serveur (sauf si tu mets l'attribut disabled).
    Du coup, tu envoies plusieurs fois le paramètre action avec plusieurs valeur ("ajouter" et "modifier") et ton serveur utilise que la première valeur.

    En mettant l'attribut "name" sur le type input il enrayera a ton serveur le paramètre action à ton serveur avec la valeur de value. Fait attention à la casse (Ajouter dans le HTML et ajouter dans le java)!

    ____

    D'autre part, il est même mieux de faire

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <input type="submit" name="ajouter" class="btn btn-warning btn-lg" value="Ajouter">
    <input type="reset" class="btn btn-warning btn-lg"   value="Effacer">
    <input type="submit" name="modifier"  class="btn btn-warning btn-lg"  value="modifier">

    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if (request.getParameter("ajouter") != null) {
    ...
    } else if(request.getParameter("modifier") != null){
    ...
    }

    Cela permet de modifier plus facilement les actions dans des cas ou tu dois traduire ton application.

    Par exemple ta version marchera en français mais pas en anglais.
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <input type="submit" name="ajouter" class="btn btn-warning btn-lg" value="Add">
    <input type="reset" class="btn btn-warning btn-lg"   value="Clear">
    <input type="submit" name="modifier"  class="btn btn-warning btn-lg"  value="Update">

    La mienne marche dans les deux cas
    Pensez à marquer vos tickets comme résolus.
    Pensez aussi aux pour les réponses pertinantes

    Quand une discution est résolue depuis un moment pour revenir dessus, il est mieux d'en crée une nouvelle avec un lien vers l'autre car :
    • Elle sera en haut du forum, elle sera donc plus visible
    • Une discussion résolue, on ne passe pas dessus pour aider, on passe dessus si on a le même problème
    • Tu demandes surement à tes clients de faire le même

  6. #6
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 115
    Points : 93
    Points
    93
    Par défaut
    Parfait cela marche a merveille !! merci beaucoup il reste maintenant que la deuxieme erreur quand je clic sur modifier la modification ne se réalise pas il m'affiche se message :

    Nom : dev 1.PNG
Affichages : 104
Taille : 684 octets

    cela signifie qu'il y a une erreur dans mon code parce que j'ai mis un bout de code qui me permet de savoir si la modification c'est réaliser avec succés ou pas :

    int resmodification=stm2.executeUpdate();
    if(resmodification>0){
    System.out.println("Modifier avec succes");
    }
    else {
    System.out.println("erreur");
    }

    dans mon cas ça affiche erreur comme tu peux le voir et aussi pour l'id il m'affiche -1

    int keym=-1;
    ResultSet rs = stm.getGeneratedKeys();
    if (rs.next()) {
    keym = rs.getInt(1);
    }
    System.out.print(keym);

    cela signifie qu'il y a une erreur qui cloche xd mais que je n'arrive pas à la savoir pouvez vous m'aidez svp ?




    Citation Envoyé par supergeoffrey Voir le message
    Salut,

    Je pensais que tu aurais compris je vais t'expliquer.

    A supprimer :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <input type="hidden" name="action" value="ajouter"/>
    <input type="hidden" value="modifier" name="action"/>

    ____

    Remplacer:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <input type="submit" class="btn btn-warning btn-lg"   action="ajouter" value="Ajouter">
    <input type="reset" class="btn btn-warning btn-lg"   value="Effacer">
    <input type="submit" class="btn btn-warning btn-lg"  action="modifier" value="modifier">

    Par:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <input type="submit" name="action" class="btn btn-warning btn-lg" value="Ajouter">
    <input type="reset" class="btn btn-warning btn-lg"   value="Effacer">
    <input type="submit" name="action"  class="btn btn-warning btn-lg"  value="modifier">

    _____

    En fait un champs de type hidden est toujours envoyé à ton serveur (sauf si tu mets l'attribut disabled).
    Du coup, tu envoies plusieurs fois le paramètre action avec plusieurs valeur ("ajouter" et "modifier") et ton serveur utilise que la première valeur.

    En mettant l'attribut "name" sur le type input il enrayera a ton serveur le paramètre action à ton serveur avec la valeur de value. Fait attention à la casse (Ajouter dans le HTML et ajouter dans le java)!

    ____

    D'autre part, il est même mieux de faire

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <input type="submit" name="ajouter" class="btn btn-warning btn-lg" value="Ajouter">
    <input type="reset" class="btn btn-warning btn-lg"   value="Effacer">
    <input type="submit" name="modifier"  class="btn btn-warning btn-lg"  value="modifier">

    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if (request.getParameter("ajouter") != null) {
    ...
    } else if(request.getParameter("modifier") != null){
    ...
    }

    Cela permet de modifier plus facilement les actions dans des cas ou tu dois traduire ton application.

    Par exemple ta version marchera en français mais pas en anglais.
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <input type="submit" name="ajouter" class="btn btn-warning btn-lg" value="Add">
    <input type="reset" class="btn btn-warning btn-lg"   value="Clear">
    <input type="submit" name="modifier"  class="btn btn-warning btn-lg"  value="Update">

    La mienne marche dans les deux cas

  7. #7
    Membre expérimenté Avatar de supergeoffrey
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2010
    Messages
    795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2010
    Messages : 795
    Points : 1 685
    Points
    1 685
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PreparedStatement stm=c.prepareStatement("update vendeurs set login=? , password=? , isactive=? where matricule=?",Statement.RETURN_GENERATED_KEYS);
    Ce n'est pas lié au fait que tu veux récupérer les clés.
    Regarde le lien c'est en anglais mais tu trouvera ta solution.

    https://stackoverflow.com/questions/...generated-keys


    ___


    Sinon as-tu essayé ? Tu ne crées pas de clé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PreparedStatement stm=c.prepareStatement("update vendeurs set login=? , password=? , isactive=? where matricule=?");
    Pensez à marquer vos tickets comme résolus.
    Pensez aussi aux pour les réponses pertinantes

    Quand une discution est résolue depuis un moment pour revenir dessus, il est mieux d'en crée une nouvelle avec un lien vers l'autre car :
    • Elle sera en haut du forum, elle sera donc plus visible
    • Une discussion résolue, on ne passe pas dessus pour aider, on passe dessus si on a le même problème
    • Tu demandes surement à tes clients de faire le même

  8. #8
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2019
    Messages : 115
    Points : 93
    Points
    93
    Par défaut
    C'est bon j'ai réussi à résoudre le problème j'ai enlevé ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    int keym=-1;
                ResultSet rs = stm.getGeneratedKeys();
                if (rs.next()) {
                    keym = rs.getInt(1);
                }
                System.out.print(keym);
    et j'ai modifié la requête voici ce que j'ai fais :
    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
    else if(request.getParameter("action").equals("modifier")){
                try{
                    PreparedStatement stm=c.prepareStatement("update vendeurs set login=? , password=? , isactive=? where matricule=?",Statement.RETURN_GENERATED_KEYS);
                    stm.setString(1, logincv);
                    stm.setString(2, password);
                    stm.setString(3, radio2);
                    stm.setString(4, matricule2);
     
                 stm.executeUpdate();
     
                PreparedStatement stm2=c.prepareStatement("update vendeurinroles set role_id=? where vendeur_id in(select id from vendeurs where matricule=?)");
                stm2.setInt(1, Integer.parseInt(radio));
                stm2.setString(2, matricule2);
                int resmodification=stm2.executeUpdate();
                    if(resmodification>0){
                        System.out.println("Modifier avec succes");
                    }
                    else {
                    System.out.println("erreur");
                    }
     
                }
    Merci beaucoup pour votre aide !!!




    Citation Envoyé par supergeoffrey Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PreparedStatement stm=c.prepareStatement("update vendeurs set login=? , password=? , isactive=? where matricule=?",Statement.RETURN_GENERATED_KEYS);
    Ce n'est pas lié au fait que tu veux récupérer les clés.
    Regarde le lien c'est en anglais mais tu trouvera ta solution.

    https://stackoverflow.com/questions/...generated-keys


    ___


    Sinon as-tu essayé ? Tu ne crées pas de clé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PreparedStatement stm=c.prepareStatement("update vendeurs set login=? , password=? , isactive=? where matricule=?");

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Mon code de modification supprime les lignes non modifiées
    Par tokio007 dans le forum VB.NET
    Réponses: 0
    Dernier message: 27/11/2014, 17h36
  2. mon code j.s ne marche plus
    Par Invité dans le forum Général JavaScript
    Réponses: 22
    Dernier message: 21/06/2011, 13h49
  3. mon exporteur d'OBJ ne marche pas
    Par bachir006 dans le forum OpenGL
    Réponses: 3
    Dernier message: 06/06/2008, 14h28
  4. help,software update,finds and installs ne marche pas
    Par christianf dans le forum Eclipse
    Réponses: 3
    Dernier message: 31/07/2007, 14h53
  5. Réponses: 5
    Dernier message: 14/05/2006, 22h41

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