Modification donnees dans la BDD en utilisant un formulaire

Résolu
Bonjour, je devrai mettre une possibilité (dans mon application) de modification des données déjà enregistrées dans la base de données. pour ce faire, le gestionnaire devra insérer le code correspondant à la table qu'il souhaite modifier, apres saisie du code, il faudra qu'un formulaire contenant des existant de la table s'affiche, et apres modification et validation, que les nouvelles données s'insèrent dans la BDD dans la table correspondant.
j'ai reussi à faire tout cela sauf que mes nouvelles données ne s'insèrent pas dans la BDD, aucun message d'erreur, aucun message de succès en cas d'insertion reussie.
Scott

13 réponses

Résumé de la discussion

Le problème discuté concernait la modification d’enregistrements : les données saisies après modification ne s’inséraient pas en base et aucun message d’erreur n’apparaissait. Selon les échanges, l’erreur venait du code_etudiant et du fait que le formulaire n’envoyait pas ce champ, rendant les requêtes SELECT et UPDATE mal ciblées. La solution retenue consiste à récupérer et transmettre le code_etudiant dans le SELECT et à maintenir ce code dans un champ caché du formulaire pour l’UPDATE. D’autres commentaires soulignent aussi qu’il faut vérifier que l’identifiant utilisé dans la clause WHERE corresponde exactement à celui envoyé via le formulaire, afin d’éviter les incohérences lors de la mise à jour.

Bobot (l’IA à votre service)
  1. Modérateur
    Bonjour,


    j'ai reussi à faire tout cela sauf que mes nouvelles données ne s'insèrent pas dans la BDD, aucun message d'erreur, aucun message de succès en cas d'insertion reussie.

    Et ..... tu penses que sans voir ton code on va pouvoir trouver la cause du problème ????

    **** Attention ****
    Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
    Explications disponibles ici :
    https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

    .
    0
    1. <code>mais avant ceci vient ce code qui permet de saisir le code référençant les données de la table à modifier:
      <form method="POST" action="ModifEtud.php">
        		<fieldset>
                  <legend><b>Insertion code</b></legend>
      			<table style="font-weight:bold">	
                    <tr>
                      <td>Insérez code Etudaint--->:</td>
      				<td>
                          <font align="center" size="2" face="Arial, Helvetica, sans-serif">
      				<input type="text" name="code_etudiant" size="15" required>
                          </font></td>
                    </tr>  
      			  </table></br>
      	            <input type="submit"  value="Valider" class="bouton1">		
      		</fieldset>
      	    </form>
      </code>
      0
  2. bonjour, mes exécuses

    <?php
           require_once "connexionBDD.php";
        // Vérification de la saisie du code
              $code_etudiant= isset ($_POST['code_etudiant'])? $_POST['code_etudiant']: NULL;
        
        $rkt="SELECT nom_etudiant
                 ,postnom_etudiant
                 ,prenom_etudiant
                 ,promotion
                 ,option_etudiant
                 ,date_naissance
                 ,sexe
                 ,numero_tel_etudiant 
         FROM etudiant WHERE code_etudiant='$code_etudiant'";
      mysqli_query($bdd,$rkt)  or die("Echec! ".mysqli_error($bdd). "Ouf! il y a eu erreur dans lq recherche de vos données, l'étudiant n a pas été trouvé");
        $p=mysqli_query($bdd,$rkt);
        $coord=mysqli_fetch_row($p);
        if($coord){
       //Créetion du formulaire complété avec les données existantes 
                echo"<form action=\"ModifEtud.php\"method=\"post\">";
          echo"<fieldset>";
          echo"<legend><b>Modification coordonnées étudiant</b></legend>";
              echo"<table>";
                echo"<tr><td>Nom :</td><td><input type=\"text\" name=\"nom_etudiant\" size=\"40\"maxlength=\"30\"value=\"$coord[0]\"/></td></tr>";
       echo"<tr><td>Post-nom :</td><td><input type=\"text\" name=\"postnom_etudiant\" size=\"40\"maxlength=\"30\"value=\"$coord[1]\"/></td></tr>";
       echo"<tr><td>Prénom :</td><td><input type=\"text\" name=\"prenom_etudiant\" size=\"40\"maxlength=\"30\"value=\"$coord[2]\"/></td></tr>";
       echo"<tr><td>Promotion :</td><td><input type=\"text\" name=\"promotion\" size=\"40\"maxlength=\"30\"value=\"$coord[3]\"/></td></tr>";
       echo"<tr><td>Option:</td><td><input type=\"text\" name=\"option_etudiant\" size=\"40\"maxlength=\"30\"value=\"$coord[4]\"/></td></tr>";
       echo"<tr><td>Date naissance :</td><td><input type=\"text\" name=\"date_naissance\" size=\"40\"maxlength=\"30\"value=\"$coord[5]\"/></td></tr>";
       echo"<tr><td>Sexe:</td><td><input type=\"text\" name=\"sexe\" size=\"40\"maxlength=\"30\"value=\"$coord[6]\"/></td></tr>";
       echo"<tr><td>N° Télephone :</td><td><input type=\"text\" name=\"numero_tel_etudiant\" size=\"40\"maxlength=\"30\"value=\"$coord[7]\"/></td></tr><br>";
           echo"</table>";
       echo"<tr><td><input type=\"submit\"value=\"Modifier\"/></td>";
       echo"<td><input type=\"reset\"value=\"Effacer\"/></td></tr></table>";
                echo"</fieldset>";
          echo"</form>";                 
            // Récupération des données saisies 
              $nom_etudiant= isset ($_POST['nom_etudiant'])? $_POST['nom_etudiant']: NULL;
                    $postnom_etudiant= isset ($_POST['postnom_etudiant']) ? $_POST['postnom_etudiant']: NULL;
        $prenom_etudiant= isset ($_POST['prenom_etudiant']) ? $_POST['prenom_etudiant']: NULL;
        $promotion= isset ($_POST['promotion']) ? $_POST['promotion']: NULL;
        $option_etudiant= isset ($_POST['option_etudiant']) ? $_POST['option_etudiant']: NULL;
        $date_naissance= isset ($_POST['date_naissance'])? $_POST['date_naissance']: NULL;
        $sexe= isset ($_POST['sexe']) ? $_POST['sexe']: NULL;
        $numero_tel_etudiant= isset ($_POST['numero_tel_etudiant']) ? $_POST['numero_tel_etudiant']: NULL;
        
      if(!empty($_POST['nom_etudiant'])
       &&!empty($_POST['postnom_etudiant'])
          &&!empty($_POST['prenom_etudiant'])
       &&!empty($_POST['promotion'])
       &&!empty($_POST['option_etudiant'])
       &&!empty($_POST['date_naissance'])
       &&!empty($_POST['sexe'])
       &&!empty($_POST['numero_tel_etudiant'])){
      
      //requête pour mise à jour des données dans la bdd
      $rqte="UPDATE etudiant SET
                   nom_etudiant=$nom_etudiant
          ,postnom_etudiant=$postnom_etudiant
          ,prenom_etudiant=$prenom_etudiant
          ,promotion=$promotion
          ,option_etudiant=$option_etudiant
          ,date_naissance=$date_naissance
          ,sexe=$sexe
          ,numero_tel_etudiant=$numero_tel_etudiant
         WHERE code_etudiant=$code";
      mysqli_query($bdd,$rqte)  or die("Echec! ".mysqli_error($bdd). "Ouf! il y a eu erreur dans la mise à jour de vos données, les données l'étudiant  $nom_etudiant $postnom_etudiant n'ont pas été modifier");
      $requete=mysqli_query($bdd,$rqte);
      if($requete){
       echo"Mise à jour effectué";
      }
     else {
      echo"Mise à jour effectué";
     }
        }
        }    
        
         mysqli_close($bdd);
          
            ?>
    


    EDIT : Ajout des balises de code (la coloration syntaxique).
    Explications disponibles ici :ICI

    Merci d'y penser dans tes prochains messages.
    "
    0
    1. Modérateur
      N'aurais tu pas un message d'erreur ?
      Si oui.. il aurait été bien de nous le donner.

      Quoi qu'il en soit ... dans ta requête ... tu as un peu oublié de mettre des QUOTES autour de tes variables...
      par exemple :
      nom_etudiant=$nom_etudiant
      

      devrait être :
      nom_etudiant='$nom_etudiant'
      


      Ensuite... tu as deux fois l'instruction mysqli_query ..
      mysqli_query($bdd,$rqte)  or die("Echec! ".mysqli_error($bdd). "Ouf! il y a eu erreur dans la mise à jour de vos données, les données l'étudiant  $nom_etudiant $postnom_etudiant n'ont pas été modifier");
        $requete=mysqli_query($bdd,$rqte);
      

      Pourquoi ??

      remplace par :
        $requete = mysqli_query($bdd,$rqte)  or die("Erreur !  ".mysqli_error($bdd). "<br> Une erreur est survenue lors de la mise à jour des données, les données de l'étudiant :  $nom_etudiant $postnom_etudiant n'ont pas été modifiées. <br> La requête est : ".$rqte);
      
      
      0
  3. Non, je n'ai eu aucun message d'erreur! au début mes variables étaient entre code, comme ça ne marchait pas, j'ai du m'enfonçait encore en enlevant les cotes. je réessaye en mettant en pratique vos remarques et puis je vous signalerai
    0
    1. <code>J'ai corrigé mais il n'y a toujours rien: ni message d'erreur ni mise à jour effectué. je reprends ici l'ensemble du code corrigé:
      <!DOCTYPE html>
         <html>
          <head>
      	   <meta charset="utf-8">
             <title>Mise à jour infos etudiant</title>
             <link href="MiseEnFormeApp.css" rel="stylesheet" type="text/css">
          </head>
          <body>
      	    <form method="POST" action="ModifEtud.php">
        		<fieldset>
                  <legend><b>Insertion code</b></legend>
      			<table style="font-weight:bold">	
                    <tr>
                      <td>Insérez code Etudaint--->:</td>
      				<td>
                          <font align="center" size="2" face="Arial, Helvetica, sans-serif">
      				<input type="text" name="code_etudiant" size="15" required>
                          </font></td>
                    </tr>  
      			  </table></br>
      	            <input type="submit"  value="Valider" class="bouton1">		
      		</fieldset>
      	    </form>
      	    <?php
             require_once "connexionBDD.php";
      	   // Vérification de la saisie du code
      		        $code_etudiant= isset ($_POST['code_etudiant'])? $_POST['code_etudiant']: NULL;
      				
      	   $rkt="SELECT nom_etudiant
      				         ,postnom_etudiant
      				         ,prenom_etudiant
      				         ,promotion
      				         ,option_etudiant
      				         ,date_naissance
      				         ,sexe
      				         ,numero_tel_etudiant 
      					FROM etudiant WHERE code_etudiant='$code_etudiant'";
      		mysqli_query($bdd,$rkt)  or die("Echec! ".mysqli_error($bdd). "Ouf! il y a eu erreur dans lq recherche de vos données, l'étudiant n a pas été trouvé");
      	   $p=mysqli_query($bdd,$rkt);
      	   $coord=mysqli_fetch_row($p);
      	   if($coord){
      		 //Créetion du formulaire complété avec les données existantes 
                  echo"<form action=\"ModifEtud.php\"method=\"post\">";
      		    echo"<fieldset>";
      		    echo"<legend><b>Modification coordonnées étudiant</b></legend>";
      		        echo"<table>";
                  echo"<tr><td>Nom :</td><td><input type=\"text\" name=\"nom_etudiant\" size=\"40\"maxlength=\"30\"value=\"$coord[0]\"/></td></tr>";
      			echo"<tr><td>Post-nom :</td><td><input type=\"text\" name=\"postnom_etudiant\" size=\"40\"maxlength=\"30\"value=\"$coord[1]\"/></td></tr>";
      			echo"<tr><td>Prénom :</td><td><input type=\"text\" name=\"prenom_etudiant\" size=\"40\"maxlength=\"30\"value=\"$coord[2]\"/></td></tr>";
      			echo"<tr><td>Promotion :</td><td><input type=\"text\" name=\"promotion\" size=\"40\"maxlength=\"30\"value=\"$coord[3]\"/></td></tr>";
      			echo"<tr><td>Option:</td><td><input type=\"text\" name=\"option_etudiant\" size=\"40\"maxlength=\"30\"value=\"$coord[4]\"/></td></tr>";
      			echo"<tr><td>Date naissance :</td><td><input type=\"text\" name=\"date_naissance\" size=\"40\"maxlength=\"30\"value=\"$coord[5]\"/></td></tr>";
      			echo"<tr><td>Sexe:</td><td><input type=\"text\" name=\"sexe\" size=\"40\"maxlength=\"30\"value=\"$coord[6]\"/></td></tr>";
      			echo"<tr><td>N° Télephone :</td><td><input type=\"text\" name=\"numero_tel_etudiant\" size=\"40\"maxlength=\"30\"value=\"$coord[7]\"/></td></tr><br>";
      			    echo"</table>";
      			echo"<tr><td><input type=\"submit\"value=\"Modifier\"/></td>";
      			echo"<td><input type=\"reset\"value=\"Effacer\"/></td></tr></table>";
                  echo"</fieldset>";
      		    echo"</form>";                	
              // Récupération des données saisies	
      		        $nom_etudiant= isset ($_POST['nom_etudiant'])? $_POST['nom_etudiant']: NULL;
                      $postnom_etudiant= isset ($_POST['postnom_etudiant']) ? $_POST['postnom_etudiant']: NULL;
      				$prenom_etudiant= isset ($_POST['prenom_etudiant']) ? $_POST['prenom_etudiant']: NULL;
      				$promotion= isset ($_POST['promotion']) ? $_POST['promotion']: NULL;
      				$option_etudiant= isset ($_POST['option_etudiant']) ? $_POST['option_etudiant']: NULL;
      				$date_naissance= isset ($_POST['date_naissance'])? $_POST['date_naissance']: NULL;
      				$sexe= isset ($_POST['sexe']) ? $_POST['sexe']: NULL;
      				$numero_tel_etudiant= isset ($_POST['numero_tel_etudiant']) ? $_POST['numero_tel_etudiant']: NULL;
      				
      		if(!empty($_POST['nom_etudiant'])
      			&&!empty($_POST['postnom_etudiant'])
      		    &&!empty($_POST['prenom_etudiant'])
      			&&!empty($_POST['promotion'])
      			&&!empty($_POST['option_etudiant'])
      			&&!empty($_POST['date_naissance'])
      			&&!empty($_POST['sexe'])
      			&&!empty($_POST['numero_tel_etudiant'])){
      		
      		//requête pour mise à jour des données dans la bdd
      		$rqte="UPDATE etudiant SET
      		             nom_etudiant='$nom_etudiant'
      					 ,postnom_etudiant='$postnom_etudiant'
      					 ,prenom_etudiant='$prenom_etudiant'
      					 ,promotion='$promotion'
      					 ,option_etudiant='$option_etudiant'
      					 ,date_naissance='$date_naissance'
      					 ,sexe='$sexe'
      					 ,numero_tel_etudiant='$numero_tel_etudiant'
      			  WHERE code_etudiant='$code'";
      		$requete= mysqli_query($bdd,$rqte)  or die("Erreur !  ".mysqli_error($bdd). "<br> Une erreur est survenue lors de la mise à jour des données, les données de l'étudiant :  $nom_etudiant $postnom_etudiant n'ont pas été modifiées. <br> La requête est : ".$rqte);
         if($requete==true){
      			{echo" L'Etudiant $nom_etudiant $postnom_etudiant $prenom_etudiant a EtE enregistre avec succes !";}
      		}	
         
           mysqli_close($bdd);
           }
      	   }	 
              ?>
      	</body>
      	</html>
      
      </code>

      0
      1. Modérateur
        Essayes ça :

        <?php
        //on place le code PHP en dehors du HTML
        //sela rend le code plus lisible et plus facile à maintenir
        //-----------------------------------------------------------------------------//
        
        //connexion à la BDD
        require_once "connexionBDD.php";
        
        
        //récupération des variables POST
        $code_etudiant = !empty($_POST['code_etudiant'])? $_POST['code_etudiant']: NULL;
        $nom_etudiant = !empty($_POST['nom_etudiant'])? $_POST['nom_etudiant']: NULL;
        $postnom_etudiant = !empty($_POST['postnom_etudiant']) ? $_POST['postnom_etudiant']: NULL;
        $prenom_etudiant = !empty($_POST['prenom_etudiant']) ? $_POST['prenom_etudiant']: NULL;
        $promotion = !empty($_POST['promotion']) ? $_POST['promotion']: NULL;
        $option_etudiant = !empty($_POST['option_etudiant']) ? $_POST['option_etudiant']: NULL;
        $date_naissance = !empty($_POST['date_naissance'])? $_POST['date_naissance']: NULL;
        $sexe = !empty($_POST['sexe']) ? $_POST['sexe']: NULL;
        $numero_tel_etudiant = isset ($_POST['numero_tel_etudiant']) ? $_POST['numero_tel_etudiant']: NULL;
        
        
        //requete pour récupérer infos de l'étudiant :
         $rkt="SELECT nom_etudiant
                     ,postnom_etudiant
                     ,prenom_etudiant
                     ,promotion
                     ,option_etudiant
                     ,date_naissance
                     ,sexe
                     ,numero_tel_etudiant 
           FROM etudiant WHERE code_etudiant='$code_etudiant'";
         $p = mysqli_query($bdd,$rkt)  or die("Echec! ".mysqli_error($bdd). "<br> Ouf! il y a eu erreur dans lq recherche de vos données, l'étudiant n'a pas été trouvé");
          
        
         //Mise à jour des données si UPDATE
         if(    $nom_etudiant
           && $postnom_etudiant
             && $prenom_etudiant
           && $promotion
           && $option_etudiant
           && $date_naissance
           && $sexe
           && $numero_tel_etudiant){
          
          //requête pour mise à jour des données dans la bdd
          $rqte="UPDATE etudiant 
                    SET nom_etudiant='$nom_etudiant'
                    ,postnom_etudiant='$postnom_etudiant'
                    ,prenom_etudiant='$prenom_etudiant'
                    ,promotion='$promotion'
                    ,option_etudiant='$option_etudiant'
                    ,date_naissance='$date_naissance'
                    ,sexe='$sexe'
                    ,numero_tel_etudiant='$numero_tel_etudiant'
             WHERE code_etudiant='$code'";
          $requete= mysqli_query($bdd,$rqte)  or die("Erreur !  ".mysqli_error($bdd). "<br> Une erreur est survenue lors de la mise à jour des données, les données de l'étudiant :  $nom_etudiant $postnom_etudiant n'ont pas été modifiées. <br> La requête est : ".$rqte);
           if($requete==true){
           echo" L'Etudiant $nom_etudiant $postnom_etudiant $prenom_etudiant a EtE enregistre avec succes !";
          }
         }
        
         
        mysqli_close($bdd); 
        ?>
        
        <!-- Le code HTML -->
        <!DOCTYPE html>
           <html>
            <head>
            <meta charset="utf-8">
               <title>Mise à jour infos etudiant</title>
               <link href="MiseEnFormeApp.css" rel="stylesheet" type="text/css">
            </head>
            <body>
          
             <form method="POST" action="ModifEtud.php">
             <fieldset>
                <legend><b>Insertion code</b></legend>
             <table style="font-weight:bold"> 
                  <tr>
                   <td>Insérez code Etudaint--->:</td>
               <td>
                    <font align="center" size="2" face="Arial, Helvetica, sans-serif">
                <input type="text" name="code_etudiant" size="15" required>
                    </font>
              </td>
                  </tr>  
             </table></br>
              <input type="submit"  value="Valider" class="bouton1">  
             </fieldset>
             </form>
           
           <?php
             if($p){
            $coord=mysqli_fetch_row($p);
            if($coord){
            //Créetion du formulaire complété avec les données existantes 
            echo"<form action='' method='post'>";
             echo"<fieldset>";
             echo"<legend><b>Modification coordonnées étudiant</b></legend>";
               echo"<table>";
                echo"<tr><td>Nom :</td><td><input type='text' name='nom_etudiant' size='40'maxlength='30'value='".$coord[0]."'/></td></tr>";
                echo"<tr><td>Post-nom :</td><td><input type='text' name='postnom_etudiant' size='40'maxlength='30'value='".$coord[1]."'/></td></tr>";
                echo"<tr><td>Prénom :</td><td><input type='text' name='prenom_etudiant' size='40'maxlength='30'value='".$coord[2]."'/></td></tr>";
                echo"<tr><td>Promotion :</td><td><input type='text' name='promotion' size='40'maxlength='30'value='".$coord[3]."'/></td></tr>";
                echo"<tr><td>Option:</td><td><input type='text' name='option_etudiant' size='40'maxlength='30'value='".$coord[4]."'/></td></tr>";
                echo"<tr><td>Date naissance :</td><td><input type='text' name='date_naissance' size='40'maxlength='30'value='".$coord[5]."'/></td></tr>";
                echo"<tr><td>Sexe:</td><td><input type='text' name='sexe' size='40'maxlength='30'value='".$coord[6]."'/></td></tr>";
                echo"<tr><td>N° Télephone :</td><td><input type='text' name='numero_tel_etudiant' size='40'maxlength='30'value='".$coord[7]."'/></td></tr><br>";
               echo"</table>";
             echo"<tr><td><input type='submit'value='Modifier'/></td>";
             echo"<td><input type='reset'value='Effacer'/></td></tr></table>";
             echo"</fieldset>";
            echo"</form>";                 
             }     
            
           }
            ?>
          </body>
         </html>
        


        Edit : correction du code au niveau de la récupération des variables;

        Cordialement, 
        Jordane                                                                 
        0
        1. <code>J'ai copié et collé le code que vous m'avait proposé, est l'erreur ci_après s'affiche: Parse error: syntax error, unexpected ';' in C:\wamp\www\projet\ModifEtud.php on line 11. j'avoue que j'ai tout vérifié pour voir pourquoi cette erreur. tout semble correcte. 
          $code_etudiant = !empty($_POST['code_etudiant'])? $_POST['code_etudiant']: NULL;
          $nom_etudiant = !empty(($_POST['nom_etudiant'])? $_POST['nom_etudiant']: NULL;
          $postnom_etudiant = !empty(($_POST['postnom_etudiant']) ? $_POST['postnom_etudiant']: NULL;
          
          La ligne 11 est celui qui commence avec $nom_etudiant = !empty(($_POST['nom_etudiant'])? $_POST['nom_etudiant']: NULL;
          
           
          
          </code>
          0
          1. Modérateur
            il y a une double parenthèse en trop.
            0
          2. Modérateur
            //récupération des variables POST
            $code_etudiant = !empty($_POST['code_etudiant'])? $_POST['code_etudiant']: NULL;
            $nom_etudiant = !empty($_POST['nom_etudiant'])? $_POST['nom_etudiant']: NULL;
            $postnom_etudiant = !empty($_POST['postnom_etudiant']) ? $_POST['postnom_etudiant']: NULL;
            $prenom_etudiant = !empty($_POST['prenom_etudiant']) ? $_POST['prenom_etudiant']: NULL;
            $promotion = !empty($_POST['promotion']) ? $_POST['promotion']: NULL;
            $option_etudiant = !empty($_POST['option_etudiant']) ? $_POST['option_etudiant']: NULL;
            $date_naissance = !empty($_POST['date_naissance'])? $_POST['date_naissance']: NULL;
            $sexe = !empty($_POST['sexe']) ? $_POST['sexe']: NULL;
            $numero_tel_etudiant = isset ($_POST['numero_tel_etudiant']) ? $_POST['numero_tel_etudiant']: NULL;
            
            0
        2. Bonsoir, oui il y a eu une parenthèse de trop presque dans chaque ligne.
          je reçois un message de confirmation que l'étudiant a été enregistré avec succès! mais lorsque j'ouvre la base de données pour voir, il n'ya aucune modification qui s'est effectuée. alors que tout passe maintenant sans erreur. seulement les modification ne sont pas enregistrées.
          0
          1. Modérateur
            Faits un echo de la requête
            0
        3. <code>l'echo de la requête est la suivant:
          if($requete==true){
             echo" L'Etudiant $nom_etudiant $postnom_etudiant $prenom_etudiant a été enregistré avec succes !";
            }
          Et je reçois ce echo, cependant dans la BDD aucune modification. ne faudra-t-il pas peut être inclure le $code_etudiant dans la requête de UPDATE?
          </code>
          0
          1. Modérateur
            Mais non... un echo de $rqte ...
            0
          2. <code>ça me donne la même chose! 
            $rqte="UPDATE etudiant 
                        SET nom_etudiant='$nom_etudiant'
                        ,postnom_etudiant='$postnom_etudiant'
                        ,prenom_etudiant='$prenom_etudiant'
                        ,promotion='$promotion'
                        ,option_etudiant='$option_etudiant'
                        ,date_naissance='$date_naissance'
                        ,sexe='$sexe'
                        ,numero_tel_etudiant='$numero_tel_etudiant'
                 WHERE code_etudiant='$code_etudiant'";
              $requete= mysqli_query($bdd,$rqte)  or die("Erreur !  ".mysqli_error($bdd). "<br> Une erreur est survenue lors de la mise à jour des données, les données de l'étudiant :  $nom_etudiant $postnom_etudiant n'ont pas été modifiées. <br> La requête est : ".$rqte);
               if($rqte==true){
               echo" L'Etudiant $nom_etudiant $postnom_etudiant $prenom_etudiant a été enregistré avec succes !";
              }
            </code>
            0
          3. Modérateur
            Il est où le echo ?
            Il t'affiche quoi ????
            0
          4. il m'affiche ça: (similation que j'ai faite)

            L'Etudiant marta Karlos nelly a été enregistré avec succes !
            0
          5. Modérateur
            @Karlos_scottNon non et non....
            le resultat de $rqte doit t'afficher ta requete..
            la requete... tu sais.. le truc du genre.
            UPDATE..   ....   WHERE.      
            
            0
        4. Je ne vois plus rien! je suis limité... svp de quel echo si ce n'est celui-ci:
          
          if($rqte==true)
          {echo"l'etudiant $nom_etudiant  $postnom_etudiant été enregistré";}
          0
          1. Modérateur
            .... si je te demande d'en AJOUTER un ... c'est donc qu'il n'est pas déjà présent dans ton code !!!!

            On va faire un peu de sémantique ....
            Sais tu ce qu'est une "variable" ? .... si je te dis que $rqte en est une ...
            Sais tu ce qu'est une REQUETE ? si je te dis que la variable $rqte contient la dite requête .....
            Sais tu écrire les lettres : E C H O ?? ... alors pourquoi ne le fais tu pas ??

            Bref... on va gagner un peu de temps....
            essayes ce code et colle mois ce qu'il t'affiche :

            
            <?php
            //on place le code PHP en dehors du HTML
            //sela rend le code plus lisible et plus facile à maintenir
            //-----------------------------------------------------------------------------//
            
            //connexion à la BDD
            require_once "connexionBDD.php";
            
            
            //récupération des variables POST
            $code_etudiant = !empty($_POST['code_etudiant'])? $_POST['code_etudiant']: NULL;
            $nom_etudiant = !empty($_POST['nom_etudiant'])? $_POST['nom_etudiant']: NULL;
            $postnom_etudiant = !empty($_POST['postnom_etudiant']) ? $_POST['postnom_etudiant']: NULL;
            $prenom_etudiant = !empty($_POST['prenom_etudiant']) ? $_POST['prenom_etudiant']: NULL;
            $promotion = !empty($_POST['promotion']) ? $_POST['promotion']: NULL;
            $option_etudiant = !empty($_POST['option_etudiant']) ? $_POST['option_etudiant']: NULL;
            $date_naissance = !empty($_POST['date_naissance'])? $_POST['date_naissance']: NULL;
            $sexe = !empty($_POST['sexe']) ? $_POST['sexe']: NULL;
            $numero_tel_etudiant = isset ($_POST['numero_tel_etudiant']) ? $_POST['numero_tel_etudiant']: NULL;
            
            
            //requete pour récupérer infos de l'étudiant :
             $rkt="SELECT nom_etudiant
                         ,postnom_etudiant
                         ,prenom_etudiant
                         ,promotion
                         ,option_etudiant
                         ,date_naissance
                         ,sexe
                         ,numero_tel_etudiant 
               FROM etudiant WHERE code_etudiant='$code_etudiant'";
             $p = mysqli_query($bdd,$rkt)  or die("Echec! ".mysqli_error($bdd). "<br> Ouf! il y a eu erreur dans lq recherche de vos données, l'étudiant n'a pas été trouvé");
              
            
             //Mise à jour des données si UPDATE
             if(    $nom_etudiant
               && $postnom_etudiant
                 && $prenom_etudiant
               && $promotion
               && $option_etudiant
               && $date_naissance
               && $sexe
               && $numero_tel_etudiant){
              
              //requête pour mise à jour des données dans la bdd
              $rqte="UPDATE etudiant 
                        SET nom_etudiant='$nom_etudiant'
                        ,postnom_etudiant='$postnom_etudiant'
                        ,prenom_etudiant='$prenom_etudiant'
                        ,promotion='$promotion'
                        ,option_etudiant='$option_etudiant'
                        ,date_naissance='$date_naissance'
                        ,sexe='$sexe'
                        ,numero_tel_etudiant='$numero_tel_etudiant'
                 WHERE code_etudiant='$code'";
            
             //-----------------------------------------------------------------------------------------------------//
             // ICI J'AJOUTE UN ECHO DE LA REQUETE POUR VOIR CE QU'ELLE 
             //CONTIENT UNE FOIS LES VARIABLES REMPLACEES PAR LEURS VALEURS...
             //-----------------------------------------------------------------------------------------------------//
               echo "<br><u> La requête est : </u> <br>" . $rqte ;
             //-----------------------------------------------------------------------------------------------------//
            
              $requete= mysqli_query($bdd,$rqte)  or die("Erreur !  ".mysqli_error($bdd). "<br> Une erreur est survenue lors de la mise à jour des données, les données de l'étudiant :  $nom_etudiant $postnom_etudiant n'ont pas été modifiées. <br> La requête est : ".$rqte);
               if($requete){
                // on récupère l' ID créé lors de l'insertion ;
                $new_id =  mysqli_insert_id($bdd); 
                 echo" L'Etudiant $nom_etudiant $postnom_etudiant $prenom_etudiant a EtE enregistre avec succes  avec l' id : ".$new_id ;
              }
             }
            
             
            mysqli_close($bdd); 
            ?>
            
            <!-- Le code HTML -->
            <!DOCTYPE html>
               <html>
                <head>
                <meta charset="utf-8">
                   <title>Mise à jour infos etudiant</title>
                   <link href="MiseEnFormeApp.css" rel="stylesheet" type="text/css">
                </head>
                <body>
              
                 <form method="POST" action="ModifEtud.php">
                 <fieldset>
                    <legend><b>Insertion code</b></legend>
                 <table style="font-weight:bold"> 
                      <tr>
                       <td>Insérez code Etudaint--->:</td>
                   <td>
                        <font align="center" size="2" face="Arial, Helvetica, sans-serif">
                    <input type="text" name="code_etudiant" size="15" required>
                        </font>
                  </td>
                      </tr>  
                 </table></br>
                  <input type="submit"  value="Valider" class="bouton1">  
                 </fieldset>
                 </form>
               
               <?php
                 if($p){
                $coord=mysqli_fetch_row($p);
                if($coord){
                //Créetion du formulaire complété avec les données existantes 
                echo"<form action='' method='post'>";
                 echo"<fieldset>";
                 echo"<legend><b>Modification coordonnées étudiant</b></legend>";
                   echo"<table>";
                    echo"<tr><td>Nom :</td><td><input type='text' name='nom_etudiant' size='40'maxlength='30'value='".$coord[0]."'/></td></tr>";
                    echo"<tr><td>Post-nom :</td><td><input type='text' name='postnom_etudiant' size='40'maxlength='30'value='".$coord[1]."'/></td></tr>";
                    echo"<tr><td>Prénom :</td><td><input type='text' name='prenom_etudiant' size='40'maxlength='30'value='".$coord[2]."'/></td></tr>";
                    echo"<tr><td>Promotion :</td><td><input type='text' name='promotion' size='40'maxlength='30'value='".$coord[3]."'/></td></tr>";
                    echo"<tr><td>Option:</td><td><input type='text' name='option_etudiant' size='40'maxlength='30'value='".$coord[4]."'/></td></tr>";
                    echo"<tr><td>Date naissance :</td><td><input type='text' name='date_naissance' size='40'maxlength='30'value='".$coord[5]."'/></td></tr>";
                    echo"<tr><td>Sexe:</td><td><input type='text' name='sexe' size='40'maxlength='30'value='".$coord[6]."'/></td></tr>";
                    echo"<tr><td>N° Télephone :</td><td><input type='text' name='numero_tel_etudiant' size='40'maxlength='30'value='".$coord[7]."'/></td></tr><br>";
                   echo"</table>";
                 echo"<tr><td><input type='submit'value='Modifier'/></td>";
                 echo"<td><input type='reset'value='Effacer'/></td></tr></table>";
                 echo"</fieldset>";
                echo"</form>";                 
                 }     
                
               }
                ?>
              </body>
             </html>
            
            0
          2. Modérateur
            @jordane45Je pense avoir vu ton erreur....

            dans la requête tu as écrit :
            WHERE code_etudiant='$code'";
            

            .... mais... la variable $code... elle n'existe pas !
            Toi.. dans la récupération des données tu utilises :
            $code_etudiant 
            


            En faisant le ECHO de la requête tu devrais le voir ....( que la variable $code est vide..)
            0
        5. En collant le code que vous venez d'ajouter, je reçois ce message:

          Notice: Undefined variable: code in C:\wamp\www\projet\ModifEtud.php on line
          La requête est :
          UPDATE etudiant SET nom_etudiant='Ndumb ndumb' ,postnom_etudiant='Mukanz' ,prenom_etudiant='King king' ,promotion='3e Bachelier' ,option_etudiant='mathematique' ,date_naissance='2016-02-11' ,sexe='H' ,numero_tel_etudiant='897430211' WHERE code_etudiant='' L'Etudiant Ndumb ndumb Mukanz King king a EtE enregistre avec succes avec l' id : 0
          0
          1. Lorsque j'essaye de remplacer $code par $code_etudiant, je reçois seulement le retour de la requete, comme celui-ci:
            
            La requête est :  
            UPDATE etudiant SET nom_etudiant='Ping' ,postnom_etudiant='low' ,prenom_etudiant='chris' ,promotion='3e Bachelier' ,option_etudiant='informatique' ,date_naissance='2016-02-11' ,sexe='H' ,numero_tel_etudiant='890030211' WHERE code_etudiant='' L'Etudiant Ping low chris a EtE enregistre avec succes  

            0
            1. Modérateur
              Dans ton formulaire HTML ..... le champ dans lequel est mis le code de l'étudiant ... c'est quoi son nom ????

              Car actuellement, dans la récupération des variables POST tu as ceci :
              
              
              //récupération des variables POST
              $code_etudiant = !empty($_POST['code_etudiant'])? $_POST['code_etudiant']: NULL;
              

              A mon avis ... ça devrait être :
              $_POST['code'])
              

              non ??
              0
          2. Bonjour et bon Week-end, j'avais perdu ma connexion depuis.
            Dans le formulaire HTML, le champ dans lequel est mis le code de l'étudiant . est se nomme code_etudiant.... 
            <tr>
                   <td>Insérez code Etudiant--->:</td>
                   <td>
                        <font align="center" size="2" face="Arial, Helvetica, sans-serif">
                    <input type="text" name="code_etudiant" size="15" required>
                        </font><td><a href="selectionEtu.php">J'ai oublié le code</a>
                    </td>
             </tr> 

            0
            1. Ok c'est résolu j'ai trouvé l'erreur. Dans le formulaire qui nous affiche les données à modifier, nous ome dttions le code_etudaint. donc dans le requettes de SELECT, nous devions aussi recuperer le code_etudiant. tout est ok dans nos codes, nous devions ajouter seulement code_etudiant dans la requette de select... je mets le comple qui mrche:
              
              <?php
              	  //connexion à la BDD
              require_once "connexionBDD.php";
              //récupération des variables POST
              $code_etudiant = !empty($_POST['code_etudiant'])? $_POST['code_etudiant']: NULL;
              $nom_etudiant = !empty($_POST['nom_etudiant'])? $_POST['nom_etudiant']: NULL;
              $postnom_etudiant = !empty($_POST['postnom_etudiant']) ? $_POST['postnom_etudiant']: NULL;
              $prenom_etudiant = !empty($_POST['prenom_etudiant']) ? $_POST['prenom_etudiant']: NULL;
              $promotion = !empty($_POST['promotion']) ? $_POST['promotion']: NULL;
              $option_etudiant = !empty($_POST['option_etudiant']) ? $_POST['option_etudiant']: NULL;
              $date_naissance = !empty($_POST['date_naissance'])? $_POST['date_naissance']: NULL;
              $sexe = !empty($_POST['sexe']) ? $_POST['sexe']: NULL;
              $numero_tel_etudiant = isset ($_POST['numero_tel_etudiant']) ? $_POST['numero_tel_etudiant']: NULL;
              
              //requete pour récupérer infos de l'étudiant :
               $rkt="SELECT code_etudiant
                           ,nom_etudiant
                           ,postnom_etudiant
                           ,prenom_etudiant
                           ,promotion
                           ,option_etudiant
                           ,date_naissance
                           ,sexe
                           ,numero_tel_etudiant 
                 FROM etudiant WHERE code_etudiant='$code_etudiant'";
               $p = mysqli_query($bdd,$rkt)  or die("Echec! ".mysqli_error($bdd). "<br> Ouf! il y a eu erreur dans la recherche de vos données, l'étudiant n'a pas été trouvé"); 
                   if($p){
                  $coord=mysqli_fetch_row($p);
                  if($coord){
                  //Créetion du formulaire complété avec les données existantes 
                  echo"<form action='Update_etudEssaye1.php' method='post'>";
                   echo"<fieldset>";
                   echo"<legend><b>Modification coordonnées étudiant</b></legend>";
                     echo"<table>";
                      echo"<tr><td>Nom :</td><td><input type='text' name='nom_etudiant' size='40'maxlength='30'value='".$coord[1]."'/></td></tr>";
                      echo"<tr><td>Post-nom :</td><td><input type='text' name='postnom_etudiant' size='40'maxlength='30'value='".$coord[2]."'/></td></tr>";
                      echo"<tr><td>Prénom :</td><td><input type='text' name='prenom_etudiant' size='40'maxlength='30'value='".$coord[3]."'/></td></tr>";
                      echo"<tr><td>Promotion :</td><td><input type='text' name='promotion' size='40'maxlength='30'value='".$coord[4]."'/></td></tr>";
                      echo"<tr><td>Option:</td><td><input type='text' name='option_etudiant' size='40'maxlength='30'value='".$coord[5]."'/></td></tr>";
                      echo"<tr><td>Date naissance :</td><td><input type='text' name='date_naissance' size='40'maxlength='30'value='".$coord[6]."'/></td></tr>";
                      echo"<tr><td>Sexe:</td><td><input type='text' name='sexe' size='40'maxlength='30'value='".$coord[7]."'/></td></tr>";
                      echo"<tr><td>N° Télephone :</td><td><input type='text' name='numero_tel_etudiant' size='40'maxlength='30'value='".$coord[8]."'/></td></tr><br>";	
              	    echo"<tr><td></td><td><input type='hidden' name='code_etudiant' size='40'maxlength='30'value='".$coord[0]."'/></td></tr>";
                     echo"</table>";
                   echo"<tr><td><input type='submit'value='Modifier' class='bouton1'/></td>";
                   echo"<td><input type='reset'value='Effacer'class='bouton2'/></td></tr></table>";
                   echo"</fieldset>";
                  echo"</form>";                 
                   }     
                  
                 }
                 //Mise à jour des données si UPDATE
               if( $code_etudiant
                 && $nom_etudiant
                 && $postnom_etudiant
                 && $prenom_etudiant
                 && $promotion
                 && $option_etudiant
                 && $date_naissance
                 && $sexe
                 && $numero_tel_etudiant){
                
                //requête pour mise à jour des données dans la bdd
                $rqte="UPDATE etudiant 
                          SET code_etudiant='$code_etudiant'
              			,nom_etudiant='$nom_etudiant'
                          ,postnom_etudiant='$postnom_etudiant'
                          ,prenom_etudiant='$prenom_etudiant'
                          ,promotion='$promotion'
                          ,option_etudiant='$option_etudiant'
                          ,date_naissance='$date_naissance'
                          ,sexe='$sexe'
                          ,numero_tel_etudiant='$numero_tel_etudiant'
                   WHERE code_etudiant='$code_etudiant'";
                $requete= mysqli_query($bdd,$rqte)  or die("Erreur !  ".mysqli_error($bdd). "<br> Une erreur est survenue lors de la mise à jour des données, les données de l'étudiant :  $nom_etudiant $postnom_etudiant n'ont pas été modifiées. <br> La requête est : ".$rqte);
                 if($rqte==true){
                 echo" L'Etudiant $nom_etudiant $postnom_etudiant $prenom_etudiant a été enregistré avec succes son code est $code_etudiant";
                }
                mysqli_close($bdd); 
               }
                  ?>

              0