Przebudowuję jakiś kod PHP, aby używać PDO do dostępu do bazy danych, ale mam problem z zapytaniem "WHERE ... IN".CHNP z zapytaniami "GDZIE ... NA"
Próbuję usunąć niektóre rzeczy z bazy danych, w oparciu o które elementy w formularzu są sprawdzane. Długość i zawartość listy będą się różnić, ale na ten przykład, wyobraźmy sobie, że jest to:
$idlist = '260,201,221,216,217,169,210,212,213';
Następnie kwerenda wygląda następująco:
$query = "DELETE from `foo` WHERE `id` IN (:idlist)";
$st = $db->prepare($query);
$st->execute(array(':idlist' => $idlist));
Kiedy to zrobić, tylko pierwszy ID jest usunięty. (Zakładam, że wyrzuca przecinek i wszystko po nim.)
Próbowałem także uczynić $idlist
tablicą, ale potem nic nie usunęło.
Jaki jest właściwy sposób korzystania z listy pozycji w przygotowanym oświadczeniu PDO?
Nie możesz dodać rozwiązania do swojego pytania. Jeśli uważasz, że jest lepszą odpowiedzią, odpowiedz na własne pytanie lub zasugeruj edycję oryginalnej odpowiedzi. – PhoneixS
@PhoneixS Dobra rada, ale ostatnio dotknąłem tego pytania w 2010 roku i od tego roku tak naprawdę nie pracowałem z PHP. Jeśli chcesz, możesz edytować. –