它不在->or_where('text like',"%dog%")
工作。我用它来制作json格式以在datatable中查看
请帮帮我!
$this->datatables->select('id,name,text,profile_image_url') //Ignited datatables
->unset_column('id')
->unset_column('profile_image_url')
->unset_column('name')
->unset_column('text')
->add_column('profile_image_url', '<img src="$1"/>', 'profile_image_url')
->add_column('name','$1','name')
->add_column('text','$1','text')
->where('text like',"%cat%")
->or_where('text like',"%dog%")
->from('posts');
echo $this->datatables->generate();
答案 0 :(得分:1)
它不起作用因为你有invalide语法,使用 - &gt; where表示你正在比较列是否等于你的第二个参数,要使用类似函数你的语法应该是
$this->db->like('text', 'cat');
$this->db->like('text2', 'dog');
但是如果要控制放置通配符(%)的位置,可以使用可选的第三个参数。您的选择是在&#39;之后,&#39;之后&#39;和&#39;两个&#39; (这是默认值。)
$this->db->like('title', 'match', 'before');
// Produces: WHERE title LIKE '%match'
$this->db->like('title', 'match', 'after');
// Produces: WHERE title LIKE 'match%'
$this->db->like('title', 'match', 'both');
// Produces: WHERE title LIKE '%match%' which is default
希望这会对你有所帮助
答案 1 :(得分:0)
我理解你的意思。但我只是使用点燃数据表的代码来创建一个jsons数组来支持数据表上的视图。它不使用普通代码,例如&#34; $ this-&gt; db-&gt; like(&#39; text&#39;,&#39; cat&#39;);&#34;在codeigniter的数据库代码中。
我已经尝试了它并返回了一个空数组。
$this->datatables->select('id,name,text,profile_image_url')
->unset_column('id')
->unset_column('profile_image_url')
->unset_column('name')
->unset_column('text')
->add_column('profile_image_url', '<img src="$1"/>', 'profile_image_url')
->add_column('name','$1','name')
->add_column('text','$1','text')
// ->like("text","%dog%");
// ->like("text","cat");
->from('posts');
$this->db->like("text","dog");
$this->db->like("text","cat");
echo $this->datatables->generate();