I really need to make this table work but I can't find what's missing in my code or why this variable is undefined. The table works fine. It displays and so is a search box above it. The html code of the table is fine bcos it displays the table. The PHP Errors appear inside the colums of the table where the id, name, etc. are being called. Please I need help..
MY CONTROLLER: (tabledisplay.php)
function index()
{
$data = array();
$this->load->model('table_model');
$data['result'] = $this->table_model->display_table();
$this->load->view('table_view', $data);//error here
}
MY VIEW: (table_view.php)
<table class="table table-hover">
<tr>
<th>ID</th>
<th>First Name</th>
<th>Middle Name</th>
<th>Last Name</th>
<th>Position</th>
</tr>
<?php
$row = array();
foreach ($row as $result); ?>//the values cannot be displayed
<tr>
<td><strong><?php echo $row['id']; ?></strong></td>//error starts here
<td><?php echo $row['fname']; ?></td>
<td><?php echo $row['mname']; ?></td>
<td><?php echo $row['lname']; ?></td>
<td width="15%"><?php echo $row['position']; ?></td>
<td width="100px"><button type="submit" class="btn btn-success">Sign in</button></td>
</tr>
<?php ?>
MY MODEL: (table_model.php)
function display_table ()
{
function filterTable($query)
{
$connect = mysqli_connect("localhost","root","","registerusers");
$filter_Result = mysqli_query($connect, $query);
return $filter_Result;
}
if(isset($_POST['search']))
{
$valueToSearch = $_POST['valueToSearch'];
// search in all table columns
// using concat mysql function
$query = "SELECT * FROM `user` WHERE CONCAT(`id`, `fname`, `lname`, `position`) LIKE '%".$valueToSearch."%'";
$search_result = filterTable($query);
}
else{
$query = "SELECT * FROM `user` LIMIT 10";
$search_result = filterTable($query);
}
return $search_result;
}