вопрос кода codeigniter - PullRequest
       2

вопрос кода codeigniter

0 голосов
/ 01 марта 2011

Вероятно, есть простое решение этого вопроса, но если у меня есть функция ниже и $ events содержит неизвестное число целых чисел, как бы я использовал переменную $ events в запросе, подобном этому?

function remove_events($events)
{
    $sql = "delete from events where event_id in $events";
    $query = $this->db->query($sql);
}

Ответы [ 4 ]

4 голосов
/ 01 марта 2011

, если $ event - это одно значение, тогда вы должны использовать

$sql = "delete from events where event_id = $events";

или, если это массив

$sql = "delete from events where event_id in (".implode(',', $events).") ";
1 голос
/ 01 марта 2011

следующий синтаксис sql должен помочь вам решить ваши запросы.

delete FROM events WHERE event_id IN ('2', '3');

В приведенном выше примере (23) должен быть массив codeigniter.

0 голосов
/ 01 марта 2011

Пусть Active Record выполнит задание:

$this->db->where_in('id', $events)->delete('events');

Все значения автоматически экранируются, создавая более безопасные запросы.

0 голосов
/ 01 марта 2011

надеюсь, что у вас есть содержимое в $ events как 1,2,3 ....если это не проблема, иначе, если между числами есть пробелы, используйте этот форматimplode(',',explode(' ',$events)); попробуй и дай мне знать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...