0
我正在尝试“关键字”搜索。我正在查看ARTWORK_title和ARTWORK_keywords字段。 ARTWORK_keywords字段是用户可以输入多个标签进行搜索的位置。活动记录WHERE查询没有得到一个字段
我已经建立了一个查询,并觉得这是正确的方式,但我只是没有得到ARTWORK_title在数据库查询中传回。
我的PHP函数如下....
$my_keywords = explode(",", $search_string);
$searchfields = array('ARTWORK_title', 'ARTWORK_keywords');
$this->db->select('*');
$this->db->from('artwork');
$this->db->where('ARTWORK_status', '1');
//$where_string = '(';
foreach($my_keywords as $keyword)
{
foreach($searchfields as $field)
{
$where_string = $field . ' LIKE \'%' . $keyword . '%\' ';
}
//$where_string .= substr($where_string, 4) . ')';
$this->db->where($where_string);
}
然而剖析SQL查询我正在以下MySQL查询回来的时候....
SELECT * FROM (
artwork
) WHEREARTWORK_status
= '1' ANDARTWORK_keywords
LIKE '%蓝%' ANDARTWORK_keywords
LIKE '%橙%'
它只是没有在查询中获得ARTWORK_title字段。
任何想法我错了吗?
很多预先感谢。
嗨@Yan这就是让外地赶回。但查询现在给我一个MYSQL错误: SELECT * FROM('artwork')WHERE ARTWORK_status' ='1'ARTWORK_title' LIKE'%Blue%'ARTWORK_keywords LIKE'%Blue%'ARTWORK_title LIKE'%'橙%%'ARTWORK_keywords LIKE'%Orange%' 它试图运行 – StuBlackett 2012-07-11 10:34:01
新的MySQL错误:未知列'AND' – StuBlackett 2012-07-11 10:36:56
@StuBlackett请立即尝试。 – 2012-07-11 10:39:30