[RESOLU] Foreach, while et insert into

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Foreach, while et insert into

Re: Foreach, while et insert into

par squallblanc » 26 oct. 2018, 17:14

Bon, j'ai trouvé mon problème, je suis vraiment un boulet.....
Ma variable $tpl ce met a la suite car elle commence pas par $tpl="TMAX=".$affiche['tmax'].PHP_EOL;
Fallait juste retirer le point avant = ...
Problème résolu

Foreach, while et insert into

par squallblanc » 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:
//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