簡體   English   中英

MySQL查詢選擇錯誤的字段

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM