Tom's Guide > Forum > Programmation > Comment mettre à jour plusieurs lignes d'une table avec widgets invisi

Comment mettre à jour plusieurs lignes d'une table avec widgets invisi

Forum Programmation : Comment mettre à jour plusieurs lignes d'une table avec widgets invisi

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Salut tout le monde,

J'ai une page web qui contient une liste déroulante.

les choix de la liste déroulante contient le nom de mes tables de ma bd MySQL.

Dès que je fais un choix, les données de la table sélectionnée s'affiche ainsi que les nom des champs.

J'aimerais pouvoir mettre à jour la table sélectionnée.

Je pense que je dois créer des zones invisibles et les récupérer dans un autre script.

J'aimerais aussi que mes chaines sql soit génériques afin d'éviter de devoir les mettre à jour.

Voici le code que j'utilise :

Affichage des données et des champs de la table sélectionnée :

Code :
  1. echo '<table border="1">';
  2. $table = $_POST['select_Nom_Tables'];
  3. echo("table vaut $table " );
  4. $query = mysql_query("SELECT * FROM $table LIMIT 20" );
  5. echo '<form action="MettreAJour.php?NbLignes='.mysql_num_rows($query).'" method="post" name="frmSaisie" id="frmSaisie">';
  6. echo '<tr>';
  7. for($i=0;$i<mysql_num_fields($query);$i++)
  8.     {
  9.     echo '<th>'.mysql_field_name($query,$i).'</th>';
  10.     }
  11. echo '</tr>';
  12. while($row = mysql_fetch_array($query,MYSQL_ASSOC))
  13. {
  14.         $compteur+=1;
  15.         echo 'compteur -->'.$compteur;
  16.         echo '<tr>';
  17.         foreach($row as $value)
  18.         {
  19.             echo '<td> <textarea>'.$value.'</textarea> <input name="'.mysql_field_name.$compteur.'" type="hidden" id="txtMatricule'.$compteur.'"value=""></td>';
  20.             echo 'mysql_field_name vaut'.mysql_field_name($query,i);
  21.     #echo '<td> <textarea>'.$value.'</textarea> <input name="'.mysql_field_name.$compteur.'" type="text" id="txtMatricule"'.$compteur.'value="'.mysql_field_name.$compteur.'"></td>';
  22.     #  }
  23.    
  24.     }
  25.             echo '</tr>';
  26. }
  27. echo '<input type="submit" name="Submit" value="Mettre la table à jour" />' ;
  28. echo '</p></form>';
  29.     echo '</table>';?>



Comme vous le voyez, j'ai déjà créé les zones invisibles.

J'ai un autre script qui est censé récupérer les données et les mettre à jour mais ça ne fonctionne pas :

Code :
  1. $NbLignes = $_GET["NbLignes"];
  2. echo '&NbLignes vaut '.$NbLignes;
  3. for ($i = 0; $i < $NbLignes;$i++)
  4. {
  5.     $Matricule = $_POST[mysql_field_name.i];
  6.      $Nom = $_POST["txtNom".i];
  7.      $Prenom = $_POST["txtPrenom".i];
  8.      $DateDeNaissance = $_POST["txtDateDeNaissance".i];
  9.      $Email = $_POST["txtEmail".i];
  10.      $Photo = $_POST["txtPhoto".i];
  11. $txtSQL = "" ;
  12. $txtSQL = "UPDATE etudiants SET Nom_Et = '".$Nom ."' WHERE Matricule_Et = '".$Matricule."'" ;
  13. mysql_query($txtSQL);



Je vous remercie d'avance pour l'aide que vous m'apporterez.

beegees

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.
Tom's Guide > Forum > Programmation > Comment mettre à jour plusieurs lignes d'une table avec widgets invisi
Aller à :

Il y a 974 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens