Řekněme, že každý z řádků ve vaší databázi vypadá takto...
[product_id][product_name][product_description][product_price]
Když přiřadíte dotaz, vraťte se k proměnné předané prostřednictvím mysql_fetch_assoc()
pomocí while smyčky každý průchod izoluje celý řádek. Z nichž můžete ručně rozdělit pomocí odkazu na klíč pole ($array['product_id']
) nebo pomocí smyčky foreach. Myslím, že problém, který máš, je v tom, že si to pleteš. S přihlédnutím k výše uvedenému příkladu rozložení tabulky můžete udělat něco takového:
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
}
Podívejte se na tento řádek v kódu:if ($product['id'] == $id) { }
Myslím, že pravděpodobně myslíte if ($row['id'] == $id) { }
místo toho.