Here is my code.
Controller function
function index()
{
$data['message'] = (validation_errors()) ? validation_errors() : $this->session->flashdata('message');
$this->load->model('customers_model');
$data['rows'] = $this->customers_model->getAll();
$meta['page_title'] = 'Customers';
$data['page_title'] = 'Customers';
$this->load->view('../header', $meta);
$this->load->view('content', $data);
$this->load->view('../footer');
}
Model function
public function getAll()
{
$q = $this->db->get('customers');
if($q->num_rows() > 0) {
foreach ($q->result() as $row) {
$data[] = $row;
}
return $data;
}
}
View File
<table cellpadding=0 cellspacing=10 width="100%">
<thead>
<tr>
<th>Name</th>
<th>Company</th>
<th>Phone</th>
<th>Email</th>
<th>Address</th>
<th>City</th>
<th>Code</th>
<th>State</th>
<th>Country</th>
</tr>
</thead>
<tbody>
<?php foreach ($data as $row):?>
<tr>
<td><?php echo $row->name; ?></td>
<td><?php echo $row->company; ?></td>
<td><?php echo $row->phone; ?></td>
<td><?php echo $row->email; ?></td>
<td><?php echo $row->address; ?></td>
<td><?php echo $row->city; ?></td>
<td><?php echo $row->postal_code; ?></td>
<td><?php echo $row->state; ?></td>
<td><?php echo $row->country; ?></td>
</tr>
<?php endforeach;?>
</tbody>
</table>
I am getting errors
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: data
Filename: views/content.php
A PHP Error was encountered
Severity: Warning
Message: Invalid argument supplied for foreach()
Filename: views/content.php
I am using CI first time and have no idea what am I doing wrong. Please help.
You assigned the data returned from the model in the associative array with the key being
rows. Ergo, in the views the name of the variable is$rowsnot$data.