belajarmasak

Mservice-dropdown

May 16th, 2018
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.46 KB | None | 0 0
  1. <?php
  2. if (!defined('BASEPATH'))
  3. exit('No direct script access allowed');
  4.  
  5. class Mservice extends CI_Model {
  6.  
  7. var $table = 'service'; //nama tabel dari database
  8. var $column_order = array(null, 'no_rangka','no_polisi','model','type','transmission','warna','tahun','km','customer','telephone'
  9. ,'handphone','contact_person','telephone_cp','cabang_penjual','cabang_service','salesman','last_service','job','pekerjaan_utama','program_promo'
  10. ,'status_aktif','hasil_fu1','hasil_fu2','hasil_fu3'); //field yang ada di table user
  11. var $column_search = array('no_rangka','no_polisi','model','type','transmission','warna','tahun','km','customer','telephone'
  12. ,'handphone','contact_person','telephone_cp','cabang_penjual','cabang_service','salesman','last_service','job','pekerjaan_utama','program_promo'
  13. ,'status_aktif','hasil_fu1','hasil_fu2','hasil_fu3'); //field yang diizin untuk pencarian
  14. var $order = array('nomor' => 'asc'); // default order
  15.  
  16.  
  17. public function __construct ()
  18. {
  19. parent::__construct();
  20. $this->load->database();
  21. }
  22.  
  23. //fungsi pencarian data dropdown.
  24. function pencarian_data($model,$tahun)
  25. {
  26. $this->db->where("model",$model);
  27. $this->db->where("tahun",$tahun);
  28. return $this->db->get("service");
  29. }
  30.  
  31.  
  32. private function _get_datatables_query()
  33. {
  34.  
  35. $this->db->from($this->table);
  36.  
  37. $i = 0;
  38.  
  39. foreach ($this->column_search as $item) // loop column
  40. {
  41. if($_POST['search']['value']) // if datatable send POST for search
  42. {
  43.  
  44. if($i===0) // first loop
  45. {
  46. $this->db->group_start(); // open bracket. query Where with OR clause better with bracket. because maybe can combine with other WHERE with AND.
  47. $this->db->like($item, $_POST['search']['value']);
  48. }
  49. else
  50. {
  51. $this->db->or_like($item, $_POST['search']['value']);
  52. }
  53.  
  54. if(count($this->column_search) - 1 == $i) //last loop
  55. $this->db->group_end(); //close bracket
  56. }
  57. $i++;
  58. }
  59.  
  60. if(isset($_POST['order'])) // here order processing
  61. {
  62. $this->db->order_by($this->column_order[$_POST['order']['0']['column']], $_POST['order']['0']['dir']);
  63. }
  64. else if(isset($this->order))
  65. {
  66. $order = $this->order;
  67. $this->db->order_by(key($order), $order[key($order)]);
  68. }
  69. }
  70.  
  71. function get_datatables()
  72. {
  73. $this->_get_datatables_query();
  74. if($_POST['length'] != -1)
  75. $this->db->limit($_POST['length'], $_POST['start']);
  76. $query = $this->db->get();
  77. return $query->result();
  78. }
  79.  
  80. function count_filtered()
  81. {
  82. $this->_get_datatables_query();
  83. $query = $this->db->get();
  84. return $query->num_rows();
  85. }
  86.  
  87. public function count_all()
  88. {
  89. $this->db->from($this->table);
  90. return $this->db->count_all_results();
  91. }
  92.  
  93.  
  94.  
  95.  
  96.  
  97. /// data sebelumnya..yg menggunakan datatables standar
  98.  
  99.  
  100.  
  101.  
  102.  
  103. function service(){
  104. return $this->db->get('service');
  105. }
  106.  
  107. function addService($add){
  108. return $this->db->insert('service',$add);
  109. }
  110.  
  111. //fungsi untuk mendapatkan service, atau mencari primary key milik table service
  112. function getService($flag){
  113. $this->db->where($flag);
  114. return $this->db->get('service');
  115. }
  116.  
  117. //fungsi untuk mengedit service yang ada didatabase
  118. function editService($flag,$edit){
  119. $this->db->where($flag);
  120. return $this->db->update('service',$edit);
  121. }
  122.  
  123. //fungsi untuk delete data service
  124. function deleteService($flag){
  125. $this->db->where($flag);
  126. return $this->db->delete('service');
  127. }
  128. }
Add Comment
Please, Sign In to add comment