Передайте массив в вызов запроса() CodeIgniter для использования в условии WHERE IN().Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Передайте массив в вызов запроса() CodeIgniter для использования в условии WHERE IN().

Сообщение Anonymous »

Я пытаюсь передать массив модели, к которой есть запрос. Я не уверен, как правильно передать массив и нужно ли мне каким-то образом манипулировать им.
У меня есть этот массив:

Код: Выделить всё

Array
(
[0] => 1
[1] => 2
)
У меня есть контроллер с такой строкой:

Код: Выделить всё

$ratings = $this->login_model->get_ratings($mechanicIds);   // get the mechanic ratings
У меня есть эта модель:

Код: Выделить всё

  function get_ratings($mechanicId)
{
$sql = "select m.mechanic_id,
m.mechanic_name,
m.city,
m.state,
count(mr.rating_id) as num_ratings,
round(avg(mr.rating_id),2) avg_rating
from mechanic m, mechanic_rating mr, rating r
where m.mechanic_id in (?)
and m.mechanic_id = mr.mechanic_id
and mr.rating_id = r.rating_id";

$query = $this->db->query($sql, $mechanicId);

if($query->num_rows() > 0)
{
return $query->result_array();
}
else
{
return false;
}
}
На самом деле он возвращает результаты, но проблема в том, что он возвращает только 1 строку результатов, хотя должен возвращать 2, поскольку в моем массиве 2 результата. Кто-нибудь знает, что я делаю не так?

Подробнее здесь: https://stackoverflow.com/questions/517 ... -condition
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»