Я пытаюсь получить данные из базы данных, взяв одну строку данных из одной таблицы и использую эти значения в качестве условия. а затем я попытался передать строку json в класс контроллера. но я не могу этого достичь. как я должен писать этот код Это код, который я использовал для получения данных.
$query = $this->db->query("SELECT * FROM todaywork WHERE idEmployee = $user ");
if ($query->num_rows() > 0)
{
$row = $query->row();
$from = $row->T_frange;
$to = $row->T_trange;
$note = $row->T_note;
}
$this->db->select("cus.idCustomer,cus.C_name,f.F_itemname,ctr.*");
//$whereCondition = array('cus.idCustomer' => $_POST['custId']);
$this->db->where('C_trnoofarr BETWEEN {$from} AND {$to}');
//filter where
$this->db->from('customer cus');
$this->db->join('contracts AS ctr', 'cus.idCustomer = ctr.idCustomer', 'INNER');
$this->db->join('facility AS f','ctr.idContracts = f.idContracts','INNER');
$query = $this->db->get();
return $query->result();
}
Используйте это для
$this->db->where('C_trnoofarr >', $from);
$this->db->where('C_trnoofarr <', $to);
greater than
2-е и less than
Замените это,
$this->db->where('C_trnoofarr BETWEEN {$from} AND {$to}');
с этим,
$this->db->where('C_trnoofarr >', $from);
$this->db->where('C_trnoofarr <', $to);
Тем не менее, если вы хотите использовать raw в WHERE
, вы должны добавить третий параметр.
$this->db->where('<where clause>', NULL, FALSE);
Из документов :
$this-> db-> где() принимает необязательный третий параметр. Если вы установите значение FALSE, CodeIgniter не будет пытаться защитить ваши имена полей или таблиц с помощью обратных ссылок.
В вашем случае, может быть,
$this->db->where('C_trnoofarr BETWEEN {$from} AND {$to}', NULL, FALSE);
$this->db->where('C_trnoofarr BETWEEN {$from} AND {$to}',NULL,FALSE);