我正在尝试使用多个类似的组合使用或在代码Igniter的mysql查询中运行查询。 我为此目的有以下代码。
$this->db->group_start();
foreach ($active['result'] as $outcode) {
$this->db->or_like('postcode',$outcode['outcode']);
}
$this->db->group_end();
除了每个部分之间包含 ESCAPE'!'的问题之外,它确实按预期创建了查询。 这是查询打印。
SELECT * FROM `tbl_service_providers` WHERE `is_active` >= 1 AND ( `postcode` LIKE '%SS13%' ESCAPE '!' OR `postcode` LIKE '%SS14%' ESCAPE '!')
答案 0 :(得分:0)
您可以尝试使用$this->db->escape_like_str()
$this->db->or_like('postcode', $this->db->escape_like_str($outcode['outcode']));
答案 1 :(得分:0)
您可以尝试这样的事情:
$this->db->group_start();
foreach ($active['result'] as $k=>$outcode)
{
if($k == 0)
{
$this->db->like('postcode',$outcode['outcode']);
}
else
{
$this->db->or_like('postcode',$outcode['outcode']);
}
}
$this->db->group_end();