2014-09-17 3 views
1

Ниже кусок кода в моей či моделиКак объединить два или более массивов в активной записи?

$project_type_ids = $this->input->post('project_type_ids'); 
    $project_status_ids = $this->input->post('project_status_ids'); 

    $this->db->select('project_title, lat, lang, type'); 
    $this->db->from('projects'); 
    $this->db->join('project_type', 'project_type.id = projects.project_type_id'); 
    $this->db->join('project_status', 'project_status.id = projects.project_status_id'); 
    $this->db->where_in("project_type_id",$project_type_ids); 
    $this->db->where($this->db->where_in("project_status_id",$project_status_ids)); 
    $result = $this->db->get(); 
  1. там что-то вроде $ this-> db-> and_where_in() в CI? Я не смог найти такой активный синтаксис записи в руководстве пользователя ci. Обратите внимание, что $ project_type_ids и $ project_status_ids - это оба массива, переданные модели через ajax с передней стороны.

  2. с помощью $this->db->last_query(); я получаю запрос и его результат запроса вернулись из базы данных, но есть также предупреждение, как показано ниже:

PHP-ошибка была обнаружена

Серьезность: Предупреждение


сообщения : Недопустимый тип смещения

Имя файла: База данных/DB_active_rec.php

Номер строки: 402



SELECT `project_title`, `lat`, `lang`, `type` 
    FROM (`projects`) 
    JOIN `project_type` ON `project_type`.`id` = `projects`.`project_type_id` 
JOIN `project_status` ON `project_status`.`id` = `projects`.`project_status_id` 
WHERE `project_type_id` IN ('1', '2', '3', '4', '5') 
AND `project_status_id` IN ('1', '2', '3') 
+0

В вашем коде при условии, что вы пытаетесь достичь с помощью второй последней строки? –

+0

Я хочу иметь что-то вроде "и project_status_id в (my_array); – hussainfrotan

ответ

1

Изменить

$this->db->where($this->db->where_in("project_status_id",$project_status_ids)); 

в

$this->db->where_in("project_status_id",$project_status_ids); 
Смежные вопросы