Code: Select all
+-------------+--------------+
| products_id | product_name |
+-------------+--------------+
| 1 | Pizza x |
| 2 | Pizza Y |
| 3 | Pizza A |
| 4 | Pizza Z |
| 5 | Pizza W |
+-------------+--------------+
+----+-------------+----------+----------+
| id | products_id | order_id | quantity |
+----+-------------+----------+----------+
| 1 | 1 | 5 | 3 |
| 1 | 2 | 5 | 4 |
| 2 | 3 | 6 | 3 |
| 2 | 4 | 6 | 3 |
| 3 | 5 | 7 | 2 |
+----+-------------+----------+----------+
Woher weiß ich, dass es null ist? Ich habe eine Methode, bei der ich überprüfe, ob das Ergebnis null ist. Wenn dies der Fall ist, zeigt der Controller einen 404 an.
Code: Select all
public function get_products_from_orders($id){
$this->db->select('products.product_name');
$this->db->select('products_to_orders.quantity');
$this->db->from('products');
$this->db->from('products_to_orders');
$this->db->where('products.products_id','products_to_orders.product_id');
$this->db->where('products_to_orders.order_id',$id);
$query = $this->db->get();
return $query->result_array();
}
< /code>
Normaler SQL: < /p>
$data = $this->db->query("select products.product_name, products_to_orders.quantity
from products, products_to_orders
where products.products_id = products_to_orders.product_id
and products_to_orders.order_id ='" . $id."'");
return $data;
< /code>
Controller: < /p>
public function view($id = NULL)
{
$data['products'] = $this->order_model->get_products_from_orders($id);
if (empty($data['products'])) {
show_404();
}
$this->load->view('templates/header');
$this->load->view('orders/view',$data);
$this->load->view('templates/footer');
}