Lad os sige, at hver af rækkerne i din database ser sådan ud...
[product_id][product_name][product_description][product_price]
Når du tildeler din forespørgsel, returneres til en variabel, der er gået gennem mysql_fetch_assoc()
ved at bruge en while-løkke, vil hver gang isolere en hel række. Hvoraf du kan adskille manuelt ved array-nøglereference ($array['product_id']
) eller ved at bruge en foreach loop. Jeg tror, at problemet du har er, at du blander det sammen. Med ovenstående eksempel på tabellayout i tankerne kan du gøre noget i stil med følgende:
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
}
Se på denne linje i din kode:if ($product['id'] == $id) { }
Jeg tror nok, du mener if ($row['id'] == $id) { }
i stedet.