Disons que chacune des lignes de votre base de données ressemble à ceci...
[product_id][product_name][product_description][product_price]
Lorsque vous affectez votre requête, retournez à une variable transmise par mysql_fetch_assoc()
en utilisant une boucle while, chaque passe isolera une ligne entière. Dont vous pouvez séparer manuellement par référence de clé de tableau ($array['product_id']
) ou en utilisant une boucle foreach. Je pense que le problème que vous rencontrez est que vous mélangez tout cela. En gardant à l'esprit l'exemple de disposition de table ci-dessus, vous pouvez faire quelque chose comme ceci :
while ($tableRow = mysql_fetch_assoc($query)) { // Loops 3 times if there are 3 returned rows... etc
foreach ($tableRow as $key => $value) { // Loops 4 times because there are 4 columns
echo $value;
echo $tableRow[$key]; // Same output as previous line
}
echo $tableRow['product_id']; // Echos 3 times each row's product_id value
}
Regardez cette ligne dans votre code :if ($product['id'] == $id) { }
Je pense que vous voulez probablement dire if ($row['id'] == $id) { }
à la place.