このエラーの原因は、CI_DB_mysqli_resultオブジェクトに対してorder_by()メソッドを呼び出しているが、CI_DB_mysqli_resultクラスにはorder_by()メソッドが定義されていないためです。これは、データベースクエリの結果セットではなく、クエリビルダ(query builder)のメソッドを使用する必要があることを意味します。
以下に、このエラーを解決するためのいくつかの方法と、それぞれの方法のコード例を示します。
方法1: クエリビルダを使用する
$this->db->select('*');
$this->db->from('table_name');
$this->db->order_by('column_name', 'asc');
$query = $this->db->get();
方法2: SQLクエリを直接実行する
$query = $this->db->query('SELECT * FROM table_name ORDER BY column_name ASC');
どちらの方法でも、order_by()メソッドをCI_DB_mysqli_resultオブジェクトではなく、CI_DB_query_builderオブジェクトまたはCI_DB_driverオブジェクトに対して呼び出すことが重要です。
このように修正することで、order_by()メソッドを正常に使用することができます。