[英]mysql query selecting wrong field
$something_else = mysql_query('SELECT image_id FROM items p LEFT JOIN list up ON p.item_id = up.item_id WHERE up.UserID = "' . $user_id . '"');
while ($r=mysql_fetch_assoc($something_else)){
foreach($r as $item_id2)
$query ='DELETE FROM list WHERE UserID="' .$user_id. '" AND item_id="' .$item_id2. '"';}
這是針對產品的“願望清單”。 每個都是相對於用戶的。 我可以添加到願望清單,但不能刪除適當的項目。 此代碼正在執行的操作是刪除列表中的最后一項,或者刪除具有最高“ image_id”的項目。
無論哪種方式,我都不會獲得與關聯項目有關的相對“圖像ID”。
我很確定這應該是解決問題的足夠信息。 我敢肯定,我的問題出在MySQL查詢中:
mysql_query('SELECT image_id FROM items p LEFT JOIN list up ON p.item_id = up.item_id WHERE up.UserID = "' . $user_id . '"');
首先,如前所述,在您的查詢不安全之前,請使用PDO。 無論如何嘗試這個:
$something_else = mysql_query('SELECT image_id FROM items p LEFT JOIN list up ON p.item_id = up.item_id WHERE up.UserID = "' . $user_id . '"');
while ($r=mysql_fetch_assoc($something_else)) {
$query ='DELETE FROM list WHERE UserID="' .$user_id. '" AND item_id="' .$r['image_id'] . '"';
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.