Top Ad unit 728 × 90

Xây dựng MY_Model trong CI (phần 3 - Phần cuối)

Chào các bạn!
Hôm trước mình cùng các bạn đã thực hiện tạo thêm 2 phương thức trong MY_Model đó là phương cập nhật và phương thức lấy thông tin chi tiết từng dòng dữ liệu trong database và hôm nay chúng ta thực hiện tạo thêm phương thức quan trọng khác. Phương thức này để giúp các bạn có thể lấy được toàn bộ danh sách dữ liệu từ một bảng nào đó trong database, ở đây mình đặt tên cho phương thức là get_list() - (giải thích chút: list ở đây chính là danh sách đó các bạn :))))) ).
Rồi chúng ta bắt đầu vào thực hiện nhé!




/**
* Lay danh sach
* $input : mang cac du lieu dau vao
*/ 
function get_list($input = array())
{
   //xu ly ca du lieu dau vao
$this->get_list_set_input($input);
//thuc hien truy van du lieu
$query = $this->db->get($this->table);
//echo $this->db->last_query();
return $query->result();
}
/**
* Gan cac thuoc tinh trong input khi lay danh sach
* $input : mang du lieu dau vao
*/
protected function get_list_set_input($input = array())
{
if (isset($input['select']))
{
 $this->db->select($input['select']);
}
// Thêm điều kiện cho câu truy vấn truyền qua biến $input['where']
//(vi du: $input['where'] = array('email' => 'hocphp@gmail.com'))
if ((isset($input['where'])) && $input['where'])
{
$this->db->where($input['where']);
}
//tim kiem like
// $input['like'] = array('name' , 'abc');
   if ((isset($input['like'])) && $input['like'])
{
$this->db->like($input['like'][0], $input['like'][1]);
}
// Thêm sắp xếp dữ liệu thông qua biến $input['order']
//(ví dụ $input['order'] = array('id','DESC'))
if (isset($input['order'][0]) && isset($input['order'][1]))
{
$this->db->order_by($input['order'][0], $input['order'][1]);
}
else
{
//mặc định sẽ sắp xếp theo id giảm dần
$order = ($this->order == '') ? array($this->table.'.'.$this->key, 'desc') : $this->order;
$this->db->order_by($order[0], $order[1]);
}
// Thêm điều kiện limit cho câu truy vấn thông qua biến $input['limit']
//(ví dụ $input['limit'] = array('10' ,'0'))
if (isset($input['limit'][0]) && isset($input['limit'][1]))
{
$this->db->limit($input['limit'][0], $input['limit'][1]);
}
}

Ở trên mình đã giải thích rất chi tiết từng dòng và từng  hàm cho các bạn rồi đó, các bạn đã có thể thực hiện lấy được dữ liệu rồi đó.

Và phương thức cuối cùng mà mình sẽ chia sẻ với các bạn giúp các bạn có thể check xem dữ liệu nào đó đã tồn tại trong database hay không?

hàm ckeck_exit():

/**
* kiểm tra sự tồn tại của dữ liệu theo 1 điều kiện nào đó
* $where : mang du lieu dieu kien
*/
    function check_exists($where = array())
    {
   $this->db->where($where);
   //thuc hien cau truy van lay du lieu
$query = $this->db->get($this->table);
if($query->num_rows() > 0){
return TRUE;
}else{
return FALSE;
}
}
Ok! Hôm nay mình cùng các bạn đã tạo thành công thêm 2 phương thức quan trọng nữa! Trong CI hỗ trợ rất nhiều phương thức như lấy tổng số dòng, hoặc tính tổng giá trị trong cột nào đó,... các bạn tự tìm thêm nhé!

Các bạn có thể tải tệp MY_Model tham khảo:

Xây dựng MY_Model trong CI (phần 3 - Phần cuối) Reviewed by Thế Giới Tri Thức on tháng 8 19, 2017 Rating: 5

Không có nhận xét nào:

All Rights Reserved by THẾ GIỚI TRI THỨC © 2018
Thiết kế bởi: THẾ GIỚI TRI THỨC

Biểu mẫu liên hệ

Tên

Email *

Thông báo *

Được tạo bởi Blogger.