Foreach, while et insert into
Posté : 26 oct. 2018, 15:09
Bonjour,
je me retrouve avec un problème que je n'arrive pas a résoudre depuis quelques temps.
Je récupère des id depuis des checkbox et je dois effectuer un insert sql avec des valeurs récupérés depuis une table avec les id des checkbox.
La récupération et l'insertion sql sont font correctement mais il y a un problème avec la boucle while dans le foreach. Quand ça insert, les résultats du while se retrouve à la suite dans la base, c'est a dire que si j'ai 3 insert, le premier aura bien le résultat avec les valeurs de la boucle while, mais les suivant vont en s'ajoutant....
voici mon code:
Merci à vous
je me retrouve avec un problème que je n'arrive pas a résoudre depuis quelques temps.
Je récupère des id depuis des checkbox et je dois effectuer un insert sql avec des valeurs récupérés depuis une table avec les id des checkbox.
La récupération et l'insertion sql sont font correctement mais il y a un problème avec la boucle while dans le foreach. Quand ça insert, les résultats du while se retrouve à la suite dans la base, c'est a dire que si j'ai 3 insert, le premier aura bien le résultat avec les valeurs de la boucle while, mais les suivant vont en s'ajoutant....
voici mon code:
//récupération des valeurs de $tpl
foreach($_POST["check"] as $valeur){
if($profils_oc == "1"){
$result = mysqli_query($link, 'SELECT * FROM profils_oc WHERE id_rigs='.$valeur.'');
while($affiche = mysqli_fetch_array($result, MYSQLI_ASSOC))
{
$tpl.="TMAX=".$affiche['tmax'].PHP_EOL;
$tpl.="POWER=".$affiche['power'].PHP_EOL;
$tpl.="FANMIN=".$affiche['fanmin'].PHP_EOL;
}
$sql = mysqli_query($link,'INSERT INTO cmd_dist VALUES("", "'.mysqli_escape_string($link, $id_user).'",
"'.mysqli_escape_string($link, $valeur).'",
"'.mysqli_escape_string($link, $etat).'",
"'.mysqli_escape_string($link, "remote_tpl").'",
"'.mysqli_escape_string($link,$tpl.$tpl1).'")');
}
}
if (!$sql){
die('Requête invalide : ' . mysqli_error($link));
$status = 'err';
}
Voila si vous avez une idée.Merci à vous