CodeIgniter Active Record - Get number of returned rows

Viewed 193163

I'm very new to CodeIgniter and Active Record in particular, I know how to do this well in normal SQL but I'm trying to learn.

How can I select some data from one of my tables, and then count how many rows are returned using CodeIgniters Active Record class?

Thanks, Tom.

11 Answers

Have a look at the result functions here:

$this->db->from('yourtable');
[... more active record code ...]
$query = $this->db->get();
$rowcount = $query->num_rows();

AND, if you just want to get a count of all the rows in a table

$table_row_count = $this->db->count_all('table_name');

Just gotta read the docs son!

$query->num_rows();

This code segment for your Model

function getCount($tblName){
    $query = $this->db->get($tblName);
    $rowCount = $query->num_rows();
    return $rowCount;       
}

This is for controlr

  public function index() {
    $data['employeeCount']= $this->CMS_model->getCount("employee");
    $this->load->view("hrdept/main",$data);
}

This is for view

<div class="count">
  <?php echo $employeeCount; ?>                                                                                            
 </div>

This code is used in my project and is working properly.

result

$sql = "SELECT count(id) as value FROM your_table WHERE your_field = ?";
$your_count = $this->db->query($sql, array($your_field))->row(0)->value;
echo $your_count;
Related