Search code examples
phpcodeigniter

Codeigniter 4.1.3 not showing query result using $db->query


Model

public function displaySales(){
        $db = db_connect();
        $query = $db->query("select sale_id, prod_id,date, sale_quantity, sale_price from items_sale;");

        // $builder = $db->table('items_sale');
        // $builder->select('sale_id, Name, Date, sale_quantity, items_sale.size, sale_price');
        // $builder->join('product', 'product.Id = items_sale.prod_id');
        // $query = $builder->get();
        // $result = $query->getResultArray();
    }

controller

 public function index(){
         $SalesModel = new SalesModel();
         $data['title']= 'Sales';
         $data['sale'] = $SalesModel->displaySales();
         $data['base'] = view('sales',$data);
         return view('templete',$data);
    }

View

 <?php if($sale):?>
            <?php foreach($sale as $sales):?>
            <tr>
            <td><?php echo $sales['sale_id'];?></td>
            <td><?php echo $sales['prod_id'];?></td>
            <td><?php echo $sales['date'];?></td>
            <td><?php echo $sales['sale_quantity'];?></td>
            <td><?php echo $sales['sale_price'];?></td>
            </tr>
            <?php endforeach;?>
            <?php else:
                echo '<div class="alert alert-danger" role="alert">No Sale</div>'?>
            <?php endif;?>

i used model to query for result and passed it to controller and then to view to display the result but it is not displaying any results. i dont know what went wrong in the query, i have tried using query builder also but no result.


Solution

  • the displaySales method in your model does not returning anything. your method may lool like this:

    public function displaySales(){
        $db = db_connect();
        $query = $db->query("select sale_id, prod_id,date, sale_quantity, sale_price from items_sale;");
        return $query->getResultArray();
    }