CodeIgniter get_where order_by

时间:2012-11-10 20:50:02

标签: php codeigniter

我正在尝试使用get_where和order_by ......

$query = $this->db->get_where($this->tbl_name, $where)->order_by('birth_date', 'ASC');

但得到了这个错误...

Fatal error: Call to undefined method CI_DB_mysql_result::order_by() in C:\xampp\htdocs\OAWA\application\models\Member_model.php on line 82

我做错了什么?

4 个答案:

答案 0 :(得分:34)

在CodeIgniter的Active Record中,除了返回结果集的getget_where之外,每个方法都返回对象本身(允许方法链接)。

因此,您需要做的是:

$query = $this->db->order_by('birth_date', 'ASC')->get_where($this->tbl_name, $where);

即。 get_where()电话需要是最后一个。它返回结果集,因此在order_by()尝试在无效的结果集上调用它之后调用get_where()

修改

还有其他方法可以编写此查询:

 $query = $this->db->from($this->tbl_name)->where($where)->order_by('birth_date', 'ASC')->get();

答案 1 :(得分:0)

这对我有用

$query = $this->db->order_by('columnName', 'ASC')->get_where('tableName');
return $query->result();

答案 2 :(得分:0)

$this->db->order_by('birth_date', 'ASC');
$query = $this->db->get_where($field1, $field2);

答案 3 :(得分:0)

$ mysql_query ="从表格中选择*,其中col_name =' $ where'按birth_date命令asc&#34 ;;

$ query = $ this-> db-> query($ mysql_query);

我刚试过这个,它对我有用