0
$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 . '"');

4

1 回答 1

0

首先,如前所述,您的查询不安全,请使用 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'] . '"';
}
于 2013-05-13T19:19:25.623 回答