我正在尝试将我的代码从查询更新为codeigniter活动记录。
这是我的旧代码
public function get_categories($parent_id = 0) {
$language_id = "1";
$query = $this->db->query("SELECT * FROM " . $this->db->dbprefix . "category c LEFT JOIN " . $this->db->dbprefix . "category_description cd ON (c.category_id = cd.category_id) LEFT JOIN " . $this->db->dbprefix . "category_to_store c2s ON (c.category_id = c2s.category_id) WHERE c.parent_id = '" . (int)$parent_id . "' AND cd.language_id = '" . (int)$language_id . "' AND c2s.store_id = '" . (int)$language_id . "' AND c.status = '1' ORDER BY c.sort_order, LCASE(cd.name)");
return $query->result_array();
}
我正在尝试将其更新为下面的新代码
我遇到的问题是它没有通过id获得正确的结果。而且由于升级到CI-3旧代码不起作用。
public function get_categories($parent_id = 0) {
$this->db->select('*');
$this->db->from('category');
$this->db->join('category_description', 'category_description.category_id = category.category_id', 'left');
$query = $this->db->get();
if ($query->num_rows() > 0) {
return $query->result_array();
} else {
return false;
}
}
如何正确使用codeigniter连接。能够使我的代码工作。
答案 0 :(得分:4)
升级到Codeigniter 3.0后,您需要更新数据库配置文件:
删除:$active_record = TRUE;
添加:$query_builder = TRUE;
实际上还有更多要考虑更新的内容,您可以在此处找到完整的文档:
http://www.codeigniter.com/user_guide/changelog.html
和
http://www.codeigniter.com/user_guide/installation/upgrade_300.html