Vous n'êtes pas identifié(e).
Pages :: 1
Bonjour à tous!
Je sollicite votre aide car je suis bloqué sur l'envoi de données php vers ma bdd...au stade actuel, j'affiche un table avec une boucle de données et je souhaite modifier chaque id_etat de chaque ligne.
En clair mon tableau boucle sur des personnes s'étant inscrites au préalable et le but et d'attribuer à chacun un groupe et de les enregistrer.
J'ai donc 2 champs groupe et enregistrement...voici le code :
<!-- Main content -->
<section class="content">
<div class="row">
<div class="col-xs-12">
<div class="box">
<div class="box-header">
<h3 class="box-title">DataTable With Fu Features</h3>
<?php
$host = "";
$user = "";
$pass = "";
$bdd = "";
// connexion
$cnx = mysql_connect($host,$user,$pass) or die("Impossible de se connecter");
$db = mysql_select_db("$bdd") or die("Impossible de se connecter");
if (mysql_connect ($host,$user,$pass))
{
echo 'Connexion réussie'; echo '<br>';
}
else
{
echo 'Connexion impossible...'.mysql_error(); echo '<br>';
}
$requete2="SELECT id_eta,etat FROM `ny6dh_man_etat`";
$result2=mysql_query($requete2);
while ($ligne=mysql_fetch_array($result2))
{
$chaine .= '<OPTION NAME= "id_etat" VALUE="'.$ligne["id_eta"].'">'.$ligne["etat"].'</OPTION>';
}
$requete2="SELECT id_grp,groupe FROM `ny6dh_man_groupe`";
$result2=mysql_query($requete2);
while ($ligne=mysql_fetch_array($result2))
{
$chaine2 .= '<OPTION NAME= "id_groupe" VALUE="'.$ligne["id_grp"].'">'.$ligne["groupe"].'</OPTION>';
}
?>
</div><!-- /.box-header -->
<div class="box-body">
<table id="example1" class="table table-bordered table-striped">
<thead>
<tr>
<th>Genre</th>
<th>Nom</th>
<th>Prénom</th>
<th>Enregistré</th>
<th>Groupe</th>
</tr>
</thead> <tbody>
<?php
$sql = "SELECT id,id_etat,genre,nom,prenom,id_eta,etat,age,tel1,ville,mod_souhaite1,id_grp,groupe,id_groupe
FROM `ny6dh_man_eleve` A, `ny6dh_man_groupe` B , `ny6dh_man_etat` C
WHERE A.id_etat = 0
AND A.mod_souhaite1 = 1
AND B.id_grp = A.id_groupe
AND A.id_etat = C.id_eta";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$id = $row["id"];
echo " <tr><td>". $row["genre"]."</td>
<td>". $row["nom"]."</td>
<td>". $row["prenom"]."</td>
<td><form method='post' action='traitement.php'><select name='".$id."' onChange='this.form.submit()' class='form-control'>". $chaine."</select></td>
<td><select name='".$row["id"]."' onChange='this.form.submit()' class='form-control'>".$chaine2."</select></form></td>
</tr> ";
}
} else {
echo "0 results";
}
$conn->close();
?>
</tbody>
<tfoot>
<tr>
<th>Genre</th>
<th>Nom</th>
<th>Prénom</th>
<th>Enregistré</th>
<th>Groupe</th>
</tr>
</tfoot>
</table>
</div><!-- /.box-body -->
</div><!-- /.box -->
Et pour le fichier traitement.php :
// lancement de la requête
$sql = 'INSERT INTO ny6dh_man_eleve values (".$_POST[" id_etat "].") WHERE id=".$_POST[" id "]."';
// on exécute la requête (mysql_query) et on affiche un message au cas où la requête ne se passait pas bien (or die)
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
// on ferme la connexion à la base
mysql_close();
?>
En fouillant un peut j'étais tombé sur ce bout de code onChange='this.form.submit() car je n'arrivais pas à ajouter un bouton valider mais cette méthode est beaucoup trop lourde donc si vous pouvez m'aider à :
_ ajouter un bouton submit pour l'intégralité du tableau
_ pouvoir mettre à jour mes données
D'avance merci
Hors ligne
le <form></form> ne doit pas être dans le while, mais commencer avant et finir après
et dans le while :
<select name='etat".$id."' class='form-control'>
<select name='groupe".$id."' class='form-control'>
pour avoir des noms différents pour les listes.
Hors ligne
Donc après ce changement l'enregistrement va se faire ?
Hors ligne
Pages :: 1