2012-03-07 5 views
1
$query = $this->db->select('*')->from($this->table)->order_by($sql); 

CI 문서가 이에 대해 명확하지 않고 어떻게 작동해야하는지 잘 모르겠습니다 ...이 쿼리가 있고 num_rows) 결과를 배열로 가져옵니다. 내가 어떻게 그럴 수 있니? 코드 점화 기 활성 레코드 - Num 행 및 결과

내가 $this->db->select('*')->from($this->table)->order_by($sql)->get();를 사용

내가 NUM_ROWS을 확인할 수 아니에요()

이상적으로는 배열의 결과를 얻을 수 result_array()를 사용하십시오.

답변

3

시도는 여기에 모델이

$query = $this->db->order_by('column name')->get('your tablename'); 

//note that your result must be an object 

$count = $query->num_rows();//your num rows result handler 

$result = $query->result_array();//your query result 
0

변경합니다 기능을 사용하려면 :

function your_function() 

{ 

    $this->db->select('*, COUNT(*) as count'); 
    $this->db->order_by($sql); 
    $query = $this->db->get('table'); 

    if ($query->num_rows() > 0) 

    { 

     return $query->result(); 

    } 

} 

은보기로 컨트롤러에서 데이터를 전달합니다.

$data['data'] = $this->your_model->your_function(); 

그런 다음 다른 반환 된 데이터와 마찬가지로 표시 할 수 있습니다.

echo $data->count; 

당신은 당신의 테이블 이름과 같은 몇 비트와 조각에서 편집해야 할 수도 있습니다,하지만 그 트릭을 할해야합니다.

:)

0

를보다 효율적으로 사용 :

$result = $query->row(); 
 
$cnt = $result->count;
대신 result_array의

(); 어떤 오류가 발생합니다. 희망이 도움이됩니다!

관련 문제