#php #mysql #sql-delete
#php #mysql #sql-удалить
Вопрос:
Например:
У меня есть таблица со списками покупок, которая содержит идентификаторы пользователей и list_names, подобные этому:
- идентификатор пользователя 1, имя_списка 1
- идентификатор пользователя 1, имя_списка 2
- идентификатор пользователя 2, имя_списка 1
Есть ли способ для меня удалить только строку, в которой user_id = 1 и list_id = 1, чтобы остались user_id 2, list_name 1 и user_id 1, list_name 2?
Я использовал этот код:
mysql_query("DELETE
FROM user_in_shoppinglists
WHERE (user_id = '$user_id' AND list_id = '$list_id')
")
Но при этом удаляются строки как с list_name 1, так и с list_name 2 для user_id 1.
Комментарии:
1. это должно сработать так, как ожидалось вы уверены в значениях ваших переменных? помогает создать запрос в его собственной строке, после чего вы можете повторить его
2.
$q="DELETE FROM user_in_shoppinglists WHERE (user_id = '$user_id' AND list_id = '$list_id')"; echo $q; exit();
3. Да, user_id = 1 и list_id = 1. Попробую echo!
4. @Dagon : вам следует использовать
die($q)
который распечатал бы строку и завершил выполнение кода, выполнив таким образом две команды одновременно.5. @user1406062 ну, это обычная микрооптимизация отладки