我正在嘗試創建訂單歷史記錄頁面。一條SQL語句,可根據orderdetails_tbl中的order_ID查找所有應用程序。這是SQL。PHP和SQL返回重複結果
SELECT * FROM applications_tbl INNER JOIN orderdetails_tbl ON orderdetails_tbl.app_ID = applications_tbl.app_ID WHERE orderdetails_tbl.order_ID = $orderID
結果以PHP顯示。
$result = mysql_query("SELECT *
FROM applications_tbl
INNER JOIN orderdetails_tbl ON orderdetails_tbl.app_ID = applications_tbl.app_ID WHERE orderdetails_tbl.order_ID = ".$order_ID."");
$row = mysql_fetch_assoc($result);
echo "<table>";
do { ?>
<tr style="background-color:#fff">
<td> <img src="getimage.php?ID=<?php echo $row['app_ID']; ?>" width="100" height="100" alt="IMAGE" /></td>
<td width="20%"><?php echo $row['app_name']; ?></td>
<td><?php echo $row['app_desc']; ?></td>
<td width="15%"><?php echo $row['app_cost']; ?></td>
</tr>
<?php
} while ($row = mysql_fetch_assoc($result));
SQL返回正確的值,PHP正確顯示它們。我的問題是,它在網頁上返回許多重複的結果。它似乎是隨機的,但我注意到更多的應用程序/項目順序更重複的結果。在phpMyAdmin中,當我運行SQL時,它不顯示重複項。
歡呼你的時間。任何建議都會大受歡迎!
你能告訴我們重複記錄嗎? – 2013-04-07 11:14:05
嘗試'mysql_fetch_row' – 2013-04-07 11:17:35
'orderdetails_tbl'聽起來像是包含訂單的訂單項。你應該有訂單頭部的另一個「訂單」表。否則,你可以使用'SELECT DISTINCT'。 – mrks 2013-04-07 11:18:07