Posez votre question Signaler

PHP : foreach et array

mister-ti 3Messages postés 25 juin 2007Date d'inscription - Dernière réponse le 25 juin 2007 à 18:02
Bonjour à tous,
J'ai un problème sur un site que je développe en ce moment.
j'ai un tableau PHP (array), et une fonction foreach dans laquelle je regarde le stock pour chaque produit dans ma base de données.
Les résultats s'affichent bien, tout est OK.
Ce que je n'arrive pas à faire, c'est effectuer la somme des valeurs retournées...
Voici mon code, ci ça peut vous aider :
// Définition du tableau
$liste = array(
'Modèle 1'=>'289',
'Modèle 2'=>'290',
'Modèle 3'=>'291',
'Modèle 4'=>'70',
'Modèle 5'=>'75',
);

foreach($liste as $titre=>$produit)
   {
		// Requête SQL
		$query_solde = "SELECT stock FROM ec_product_tangible WHERE nid='$produit'";
		$solde = mysql_query($query_solde) or die();
		
		// Récupération de résultats et stockage dans un tableau - METHODE 2
		while($row = mysql_fetch_array($solde))
		{
		$stock=$row['stock'];
		echo $stock.'<br>';
		}
	}

$total = array($row);
echo "la somme est de : ".array_sum($total);

Un petit coup de main ne serait pas de refus, je galère depuis quelques jours maintenant !!
Lire la suite 

PHP : foreach et array »

1 réponses
Réponse
+1
moins plus
salut Mister,

à lire vite fait, je me dis que tu n'ajoutes que la dernière requête au tableau $total.
il faudrait ajouter la ligne dans le each{} et même dans le while{} si tu dois ajouter plusieurs enregistrements de stock pour un produit.
$total = Array();

foreach($liste as $titre=>$produit)
{
		// Requête SQL
		$query_solde = "SELECT stock FROM ec_product_tangible WHERE nid='$produit'";
		$solde = mysql_query($query_solde) or die();
		
		// Récupération de résultats et stockage dans un tableau - METHODE 2
		while($row = mysql_fetch_array($solde))
		{
		$stock=$row['stock'];
		echo $stock.'<br>';

                $total[] = $row['stock'];

		}

}

mais ce n'est peut être pas du tout ce que tu veux faire…

bon courage !
Ajouter un commentaire
Ce document intitulé « PHP : foreach et array » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?