Method 01
in config/routs.php
$route['404_override'] = 'Controller name';//this to avoid 404 Error
Method 02
in your controller check empty
$data['product'] = $this->Model_Name->get_product($id);
if(empty( $data['product']))
{
$this->empty_result();
}
else
{
//load relevent view
}
In controller at top create function call empty_result()
public function empty_result()
{
$this->load->view('template/header');
$this->load->view('template/right_sidebar');
$this->load->view('template/NothingFound',$data);//create a page to show empty or Nothing found
$this->load->view('template/foot');
}
In Model
public function get_product($id)
{
$query = $this->db->query("SELECT * FROM product WHERE id ='$id'");
$result = $query->result_array();
return $result;
}
In view (template/NothingFound.php)
create file call NothingFound.php
in that
<h1>No thing found title</h1>
<!--customize the view as you want. Add some images-->
EDIT 01
Method 03
Goto error/error_404.php
Edit the error message to display in your styles