Вероятно, есть простое решение этого вопроса, но если у меня есть функция ниже и $ events содержит неизвестное число целых чисел, как бы я использовал переменную $ events в запросе, подобном этому?
function remove_events($events) { $sql = "delete from events where event_id in $events"; $query = $this->db->query($sql); }
, если $ event - это одно значение, тогда вы должны использовать
$sql = "delete from events where event_id = $events";
или, если это массив
$sql = "delete from events where event_id in (".implode(',', $events).") ";
следующий синтаксис sql должен помочь вам решить ваши запросы.
delete FROM events WHERE event_id IN ('2', '3');
В приведенном выше примере (23) должен быть массив codeigniter.
Пусть Active Record выполнит задание:
$this->db->where_in('id', $events)->delete('events');
Все значения автоматически экранируются, создавая более безопасные запросы.
надеюсь, что у вас есть содержимое в $ events как 1,2,3 ....если это не проблема, иначе, если между числами есть пробелы, используйте этот форматimplode(',',explode(' ',$events)); попробуй и дай мне знать.
implode(',',explode(' ',$events));