私がやろうとしているのは、Puchaseテーブルに現在持っているすべての購入を表示することです。購入アイテムが表示されるようにしたいのですが、次のように表示しようとしています。
アイテム1を購入する
?info = IDへの詳細リンクをクリックして、残りの情報を表示します
これは私が現在持っているコードです:
<?php
$sql="SELECT PurchaseID, FrameNumber, Date From Purchase WHERE Email = '$id'";
$purchases = mysqli_query($con, $sql);
while(list($purchaseid, $framenumber, $date) = mysqli_fetch_row($purchases)){
echo "
<table width=\"100%\">
<tr>
<th>PurchaseID:</th>
<th>Date Of Purchase:</th>
<th>FrameNumber:</th>
<th>More Details</th>
</tr>
<tr>
<td>$purchaseid</td>
<td>$date</td>
<td>$framenumber</td>
<td><a href=\"myaccount.php?info=$framenumber\">Click Here</a></td>
</tr>
</table>";
$info = $_GET['info'];
if($info){
$fnumber = mysqli_query($con, "SELECT BikeCode FROM BikeStock WHERE FrameNumber = '$info'");
while(list($bikecodes) = mysqli_fetch_row($fnumber)){
$bikes = mysqli_query($con, "SELECT * From Bike WHERE BikeCode = '$bikecodes' LIMIT 1");
while(list($bikecode, $manufacturer, $model, $subtype, $year, $fmaterial, $desc, $gender, $type, $price, $stock) = mysqli_fetch_row($bikes)) {
echo "<table><tr><th>BikeCode:</th>
<th>Manufacturer:</th>
<th>Model:</th>
<th>FrameMaterial:</th>
<th>Year:</th>
</tr>
<tr>
<td>$bikecode</td>
<td>$manufacturer</td>
<td>$model</td>
<td>$fmaterial</td>
<td>$year</td>
</tr>
<tr><th>Description:</th><td colspan=\"4\">$desc</td></tr>
<tr><th>Bike Images:</th><td colspan=\"4\">
<div id=\"gallery\">";
$sql = "SELECT SourcePath, Description FROM BikeImages where bikecode = '$bikecode'";
$result = mysqli_query($con, $sql) or die('Query2 failed: ' . mysqli_error($con));
while(list($sourcepath, $description) = mysqli_fetch_row($result)) {
echo "<a class=\"gallery\" href=\"$sourcepath\" title=\"$description\"><img src=\"$sourcepath\" width=\"72\" height=\"72\" /></a>";
}
echo "</div></td></tr></table>";
}
}
}
}
?>
編集:私が現在抱えている問題は、詳細情報をクリックすると、1つだけではなく、3つすべての項目のすべての情報が表示されることです。SQLを1つの製品のみを取得するように制限しましたが、正しい製品でなくても、他の購入IDでその製品を繰り返すだけです。
私の現在の出力は次のようになります。
購入アイテム1:
表示される情報
購入アイテム2:
情報を表示したくないのに購入アイテム1の情報を表示したいだけです。