echo
を効果的に配置しました ループ後のステートメント:
while($row = mysqli_fetch_array($result));
^ this is the problem
echo $row['price'];
...は次と同じです:
while($row = mysqli_fetch_array($result)) {}
echo $row['price'];
そしてループの後$row
false
になります したがって、何もエコーアウトされません。
必要なもの:
while($row = mysqli_fetch_array($result))
echo $row['price'];
または(この種の間違いを回避するのでより良いです...):
while($row = mysqli_fetch_array($result)) {
echo $row['price'];
}
また、現在発生しているSQLインジェクションの問題を回避するために、プリペアドステートメントを使用する必要があります。