如何修改默认搜索,以便他可以查看1,2,3行类似2或2,3或1,3的内容?即使那时它被用于idelano podskazadi如何在chekbokslista的基础上进行搜索。好的类型,根据他的搜索选择项目和1,3。
$ criteria-> addSearchCondition ('m_complect', $ this-> m_complect, true, 'LIKE');
未能找到1,3的值而不是1,6
需要查询表格
这
tbl_motor
其中m_complect
喜欢'%1%6%';
他做了
tbl_motor
其中m_complect
喜欢'%1,6%';
如果是这样,它没有正确改变
$ criteria-> addSearchCondition ('m_complect', str_replace (",", "%", $ this-> m_complect), true, 'LIKE');
答案 0 :(得分:0)
问题是第三个参数,它不应该是真的,因为它会scape任何%符号,你需要这样做:
$mComplectValue = sprintf("%%%s%%", str_replace (",", "%", $this->m_complect));
$criteria->addSearchCondition('m_complect', $mComplectValue, false);
我使用sprintf
来避免任何SQL注入。但你也可以这样做:
$mComplectValue = '%' . str_replace (",", "%", $this->m_complect) . '%';
$criteria->addSearchCondition('m_complect', $mComplectValue, false);
有关详细信息,请查看CDBCriteria documentation。