Tutorial Codeigniter

Codeigniter – Membuat Combo Search Sugesti Ajax

Combo search sugesti di codeigniter

Combo search sugesti di codeigniter

Combo search yang memberikan data sugesti ini Saya buat ketika Saya mengerjakan projek sebuah aplikasi penjualan. Pada aplikasi penjualan tersebut ada sebuah teks box yang apabila di ketikkan akan memberikan sugesti berupa data barang.

Untuk input dari teks box tersebut berupa nama barang.

Hal tersebut di buat agar memudahkan pengguna aplikasi untuk mencari dan milih produk yang akan di input kedalam database. Mungkin jika barang atau produk yang ada pada data hanya sedikit, teks box seperti ini tidak terlalu dibutuhkan. Namun jika data barang atau produk terdapat banyak data misal ratusan atau ribuan, maka combo box biasa akan sedikit merepotkan jika harus menyecroll ke bawah.

Merancang combo box search dengan sugesti pada program php  nativ biasa tidak serumit membuatnya di CI atau codeigniter. Nah berikut ini cara simpel untuk membuat teks pencarian dengan sugesti di codeigniter.

Combo search sugesti di codeigniter

Untuk bantuan ajax nya silahkan download jquery ini:

https://code.jquery.com/jquery-3.2.1.min.js

Letakkan jquery min js tersebut letakkan di mana script javascript kamu disimpan pada projek kamu. Kemudian panggil url dengan cara:

<script src=”<?php echo base_url();?>assets/js/jquery-3.2.1.min.js”></script> 

Pada contoh ini saya meletakkan jquery tersebut di folder assets dan di folder js. Dan saya meletakkan pemanggilan jquery tersebut di footer template aplikasi saya yaitu sebelum tag </body>.

Pemanggilan Ajax produk

Kemudian letakkan script dibawah ini setelah pemanggilan jquery diatas.

<script>

$(document).ready(function() {

//produk________

var ac_config = {

source: “<?php echo base_url();?>pembelian/cariProduk“,

select: function(event, ui){

$(“#namaProduk“).val(ui.item.namaProduk);

$(“#stokProduk“).val(ui.item.stokProduk);

$(“#minBeli“).val(ui.item.minBeli);

$(“#idProduk“).val(ui.item.idProduk);

},

minLength:1

};

$(“#namaProduk“).autocomplete(ac_config);

</script>

Pada script diatas, tag yang berwarna merah adalah pemanggilan data produk yang di tempatkan pada controller pembelian pada fungsi cariProduk. Pada fungsi cariProduk ini data ajax akan di tampilkan berupa data json yang akan di panggil pada form yang ingin digunakan sebagai pencarian produk.

Kemudian tag bewarna biru adalah data yang akan ditampilkan kedalam form-form yang di panggil melalui ajax tadi. Pada kasus ini, tidak semua data saya tampilkan namu untuk nama produk saya tampilkan. Dan untuk data yang lain seperti stok produk dan min beli saya masukkan ke dalam form hidden.

# Controller

Controller cariProduk

Selanjutnya pada fungsi pada controller cariProduk buat script dibawah ini:

function cariProduk(){

$data = $this->M_pembelian->cari_produk();

$data = $this->M_pembelian->cari_produk();

foreach($data->result() as $row){

$produks[] = array(‘nama’ => $row->namaProduk,’stok’=>$row->stokProduk,’minBeli’=>$row->minBeli,’idProduk’ => $row->idProduk);

} // Cleaning up the term

$term = trim(strip_tags($_GET[‘term’]));

// Rudimentary search

$matches = array();

foreach($produks as $nama){

if(stripos($nama[‘nama’], $term) !== false){

// Add the necessary “value” and “label” fields and append to result set

$nama[‘value’] = $nama[‘nama’];

$nama[‘label’] = “{$nama[‘nama’]}”;

$matches[] = $nama;

} }   // Truncate, encode and return the results $matches = array_slice($matches, 0, 6); print json_encode($matches);

}

# Model

class M_pembelian extends CI_Model{

function cari_produk(){

return $this->db->query(“SELECT * FROM produk”);

}

}

Pada script model diatas tabel yang digunakan adalah tabel produk yang fieldnya yaitu:

  1. idProduk
  2. namaProduk
  3. hargaProduk
  4. stokProduk
  5. minBeli

# View

<?php echo form_open(‘pembelian/insert’);

echo ‘                                <div class=”box-body table-responsive”> <div class=”form-group”> <label for=”namaProduk”>Produk (<i><small>ketik untuk cari</small></i>)</label> <input type=”text” name=”namaProduk” value=”” id=”namaProduk” class=”form-control namaProduk” placeholder=”” required=”required”  />  <input type=”hidden” id=”stokProduk” class=”stokProduk” name=”stokProduk”> <input type=”hidden” id=”minBeli” class=”minBeli” name=”minBeli”> <input type=”hidden” id=”idProduk” class=”idProduk” name=”idProduk”> </div></div>’; echo ‘<div class=”panel-footer”> ‘; echo form_submit(‘submit’,’Simpan’,’class=”btn btn-primary”‘); echo ‘<a href=”‘.base_url().’produk” class=”btn btn-primary”>Kembali</a>’;   echo ‘</div>’; echo form_close(); ?>

Ini adalah salah satu potongan view yang ada pada aplikasi menggunakan codeigniter. Tag warna merah itu adalah sebuah id yang akan menjadi sebuah identitas dimana akan hasil pemanggilan ajax produk yang dicari tadi akan ditampilkan. Untuk teks yang akan menjadi sugesti yaitu pada id form namaProduk.

Untuk kasus yang lain, kamu bisa rubah menjadi kode Produk, kode barang atau yang lainya.

Oia jika tanpa style css. maka tampilan combo akan tidak beraturan. Maka silahkan tambahkan script css berikut agar tidak berantakan combo yang dihasilkan. Untuk penempatannya di view.

Style CSS

<style>
/*.tt-hint,        .kode {            font-size: 24px;            height: 35px;            line-height: 30px;            outline: medium none;            padding: 8px 12px;        }*/ /* .tt-hint{            font-size: 28px;            height: 35px;            line-height: 30px; width:100%;            outline: medium none;            padding: 19px 8px 12px 12px; text-transform: capitalize;        } .pelanggan { margin-top: 5px;            font-size: 28px;            height: 35px;            line-height: 30px;            outline: medium none;            padding: 8px 8px 12px 12px; text-transform: capitalize;        }        .tt-dropdown-menu {            margin-top: 0px;            padding: 8px 8px 12px 12px;            background-color: #fff;            border: 1px solid #ccc;            font-size: 14px; text-transform: capitalize;        } */ /*auto complete barang*/ .ui-helper-hidden-accessible { display:none; }  /*hilangkan notif*/   .ui-autocomplete {    position: absolute;    top: 100%;    left: 0;    z-index: 1000;    float: left;    display: none;    min-width: 160px;       padding: 4px 0;    margin: 0 0 10px 25px;    list-style: none;    background-color: #ffffff;    border-color: #ccc;    border-color: rgba(0, 0, 0, 0.2);    border-style: solid;    border-width: 1px;    background-clip: padding-box;    *border-right-width: 2px;    *border-bottom-width: 2px;}
.ui-menu-item > a.ui-corner-all {    display: block;    padding: 3px 15px;    clear: both;    font-weight: normal;    line-height: 18px;    color: #555555;    white-space: nowrap;    text-decoration: none;}
.ui-state-hover, .ui-state-active {    color: #ffffff;    text-decoration: none;    background-color: #0088cc;    border-radius: 0px;    -webkit-border-radius: 0px;    -moz-border-radius: 0px;    background-image: none;}    </style>

Untuk hasilnya seperti tampilan diatas.

Codeigniter (CI) – Cara Simpel Membuat Kode Otomatis

Membuat kode otomatis dengan menggunakan data yang ada pada database banyak dilakukan untuk membuat beberapa aplikasi, misalnya:

  1. Kode barang, pada aplikasi penjualan barang, toko, gudang dan inventaris
  2. Kode Buku, pada aplikasi perpustakaan
  3. Kode Kendaraan, pada aplikasi perpajakan

Diatas contoh beberapa kode yang di implementasi kedalam aplikasi. Untuk penggunaannya bisa berupa kode biasa atau menggunakan barcode.

Yang perlu diketahui, pada setiap framework seperti codeigniter dan lainya konsepnya adalah MVC yaitu model view dan control.

Nah berikut ini akan Saya share, bagaina membuat kode untuk sebuah aplikasi perizinan bagunan. Untuk kode yang akan dibuat yaitu kode pemohon.

Untuk kode tersebut akan kita inisialkan dengan “P”. Misalkan pemohon yang didaftarkan adalah pemohon pertama maka akan terbuat kode “P1”, untuk pemohon kedua maka akan terbuat kode otomatis “P2” dan seterunya.

Oke langsung, saja..

3 Langkah Membuat Kode Otomatis

1. Controller

Pertama kamu buat dulu, sebuah controller untuk  mengidentifikasi fungsi yang akan memanggil model dan view pada kode otomatis tersebut.


defined('BASEPATH') OR exit('No direct script access allowed');defined('BASEPATH') OR exit('No direct script access allowed');

class Home extends CI_Controller{    public function __construct(){ parent::__construct();

$this->load->model('M_pemohon');

}

function pemohon(){

$data['title'] = "Tambah Data Pemohon";$data['title'] = "Tambah Data Pemohon"; $data['header'] = "Tambah Pemohon"; $data['subheader'] = "manajemen pemohon"; $data['kode'] = $this->M_pemohon->kode_pemohon(); $this->load->view('v_kodePemohon',$data);

}

}

2. Model

Model adalah dimana tempat melakukan pemanggilan data yang berada pada database. Nah disinilah kamu bisa buat kode otomatis tersebut. Dan selanjutnya akan di panggil atau ditampilan pada view.

class M_pemohon extends CI_Model{

function kode_pemohon(){function kode_pemohon(){ $kode = $this->db->query("SELECT * FROM tabel_pemohon WHERE level='3'"); $kode = $kode->num_rows(); if($kode == 0){ $kode = "P1"; }else{ $n = $kode+1; $kode = "P$n"; } return $kode; }

}

3. View

Disini tempat menampilan kode otomatis yang telah kamu buat. Pernah saya coba membuat beberapa quer y disini, ternyata memang tidak bisa. Ini mengindikasikan bahwa memang framework memang sudah benar-benar menghandle hal ini.

Tujuan hal tersebut adalah untuk keamanan.

Di controller sudah di jelaskan ini:

$data[‘kode’] = $this->M_pemohon->kode_pemohon();

Ini maksudnya adalah memasukkan kode otomatis yang kamu buat tersebut ke dalam data variabel $kode.

untuk menampilan kode otomatis yang telah dibuat tersebut silahkan di print atau di echokan saja. di file kodePemohon.php pada view codeigniter kamu seperti ini:

<?php echo $kode;?>

Tinggal untuk penempatanya mau ditempakan dimana misalkan di  form.  Atau mau di pakai untuk proses lainya terserah kamu.

Note:

Untuk database yang digunakan silahkan di sesuaikan saja dengan yang kamu buat, untuk tabel nya pada contoh ini kita buat dengan nama ‘tabel_pemohon” dengan fieldnya;

  1. kodeUser (varchar)
  2. nama (varchar)
  3. username (varchar)
  4. password (varchar)

 

 

Postingan berikutnya

  1. bikin kode otomatis code igniter
  2. buat kode akun otomatis igniter

Codeigniter – Menghitung Jumlah Baris Tabel Database

Menghitung baris di php cukup mudah saja. Namun kali ni akan saya share bagaiman cara simpel juga untuk mengetahui jumlah baris data yang ada pada tabel database yang kamu gunakan.

Baris atau row ini, biasanya di hitung digunakan untuk melakukan suatu proses yang membutuhkan total data yang ada.

Untuk kasus penggunaannya sendiri misalnya yaitu pembuatan kode, mengetahui jumlah sebagaian atau seluruh data tertentu pada database, pembuatan logika tertentu, semua tergantung pada kebutuhan masing-masing. Berbeda dengan php biasa / php native, kalau framework codeigniter (CI) ini sintak sqlnya berada pada suatu tempat yang di pisahkan yaitu pada folder model, pada folder inilah script-script sql di simpan.

Pada tutorial ini, saya menerapkan penghitungan data database pada saat saya akan membuat kode yang terbuat otomatis pada sebuah aplikasi menggunakan framework CI. Oke, langsung aja,

Ini Cara menghitung Jumlah Baris di codeigniter

class M_kriteria extends CI_Model{
function kode_kriteria(){
$query = $this->$db->query("SELECT * FROM kriteria");
$total = $query->num_rows();
return $total;
}
}

Pada script diatas, ini adalah file data pada model kriteria. Dimana saya akan menghitung jumlah data kriteria yang sudah di masukkan ke dalam tabel database.

Pada contoh diatas, data akan di tarik lagi pada variabel total, dan selanjutnya untuk penggunaanya terserah kamu,  mau di apakan variabel itu.

Sampe disini, mudahkan untuk mengetahui total data pada database.

Contoh lagi, pada suatu tabel user pada database ada 3 level user yaitu: admin, pimpinan, dan juga member. Selanjutnya kamu ingin mengetahui total member pada tabel user tersebut. Caranya hampir sama, tinggal sisipkan saja kondisi untuk menghitung data dengan level member.

class M_kriteria extends CI_Model
{
function kode_kriteria(){

$query = $this-&gt;$db-&gt;query("SELECT * FROM kriteria");

$total = $query-&gt;num_rows();

return $total;

&nbsp;

}
}

Demikian cara simpel menghitung data pada codeigigniter. Silahkan berkomentar dan like page sistemphp.com Semoga bermanfaat.

Postingan berikutnya

  1. menghitung jumlah baris tabel codeigniter
  2. Logika menghitung jumlah data tabel html dengan php
  3. menampilkan jumlah data dalam database codeigniter
  4. menghitung jumlah data di codeigniter
  5. script php menampilkan dan menghitung jumlah pada database

Bootstrap – Cara Setting Extra plugin CKEDITOR

Cara Setting Extra plugin CKEDITOR – Ckeditor adalah suatu form yang digunakan untuk menginput text dengan berbagai format yang disediakan. Untuk fitur-fitur toolbar yang ada misalnya adalah bold,italic, underline dan juga fitur insert gambar. Nah kali ini kita akan sharing bagaimana menambah plugin ckeditor pada template bootstrap suatu web.

Pada kasus ini saya akan mencoba menambahkan plugin insert image pada ckeditor yang saya gunakan. Pada awalnya Saya bingun dimana mengatur configurasi plugin ckeditor yang ada, buat yang belum tau silahkan ikutin cara-cara ini:

Cara Setting Extra plugin CKEDITOR

1. Masuk ke folder ckeditor pada projek kamu

extra-config-ckeditor

Bootstrap – Cara Setting Extra plugin CKEDITOR

2. Buka file config.js

Nah pada file javascript inilah konfigurasi-konfigurasi ckeditor dapat dilakukan. Pengaturan-pengaturan yang dapat dilakukan misalnya menambah button toolbar ckeditor, menghapus button toolbar ckeditor, menambah plugin, template skin. Dan banyak lai.

Pada javascript tersebut silahkan ditambahkan script:

config.extraPlugins = ‘folder_plugin’;

Untuk folder plugin silahkan diganti dengan nama folder plugin yang ingin kamu tambahkan.

Demikian Cara Setting Extra plugin CKEDITOR semoga bermanfaat.

Postingan berikutnya

  1. konfigurasi ckeditor

Codeigniter – Unable to locate the specified class: Session.php

Codeigniter – Unable to locate the specified class: Session.php – Mengatasi error pada codeigniter yang tidak dapat load sebuah session.

Secara Umum error tersebut adalah error pada pemanggilan class yaitu Session.php. Pada codeigniter 3.x lokasi penyimpanan server yang berada pada driver file terletak pada direktori system/libraries/Session/Session.php.

Berdasarkan pengalaman saya, Saya mengalami error tersebut ketika saya akan meload sebuah session yang akan digunakan untuk menyimpan session pada file driver. Sudah beberapa kali saya coba, baik melalui autoload dan juga konfigurasi manual tetap saja mengalami error seperti itu.

Untuk konfigurasi pada autload saya coba seperti ini

$autoload[‘libraries’] = array(‘session’)

Konfigurasi manual, dipanggil pada sebuah controller seperti ini

$this->load->library(‘session’);

Namun tetap saja tidak bisa dan mengalami error. Paa kasus saya Saya, saya memanggil kontroller lain di sebuah kontroller. Nah oleh karena itulah terjadi error. Dan setelah saya buat script controller dan pemanggilan session di controller utama yang saya gunakan dan akhirnya errornya hilang dan tidak ada masalah lagi. Error seperti ini sudah saya cari di banyak tutorial namun tidak mendapatkan solusi, baik di forum maupun di situsnya langsung. Namun sekarang sudah bisa, Mungkin kamu mengalami masalah yang sama, coba di cek script codeigniter kamunya.

 

Menghilangkan Index.php di Codeigniter

Menghilangkan Index.php di Codeigniter – Bagi sebagian programmer atau pengembang sebuah aplikasi web permalink atau sering kita kenal dengan URL adalah salah satu bagian penting yang berperan dalam desain website. Pentingnya adalah terletak pada sebuah struktur url yang terlihat lebih singkat dan simpel. Bukan hanya itu, penghilangan index.php pada framework CI atau codeigniter sebagai salah satu teknik SEO dalam konsep seo onpage dalam hal url. Yang perlu di pahami sebelumnya adalah konsep framework codeigniter adalah 3 yaitu controller, models, dan juga views yang mana ketiga tersebut terdapat kedalam sebuah struktur yaitu application. Namun, untuk pengaturan dan juga konfigurasi yang ada pada codeigniter terletak pada file-file yang ada pada folder config di dalam folder application.

Menghilangkan Index.php di Codeigniter

Oke langsung saja inilah cara simpel membuat agar index.php pada link codeginiter tidak tanpak 1. SIlahkan buka file config.php yang terletak pada folder

config codeigniter

config codeigniter

application->config->config.php

Kemudian rubah:

$config[‘index_page’] = ‘index.php’;

menjadi:

$config[‘index_page’] = ”;

Selanjutnya rubah:

$config[‘uri_protocol’] = ‘AUTO’;

Menjadi:

$config[‘uri_protocol’] = ‘REQUEST_URI’;

2. Yang kedua silahkan buat file .htaccess dan letakkan pada root folder utama projek codeigniter kamu. Kemudian isi file .htaccess tersebut dengan script regex berikut ini:

htaccess codeigniterq

htaccess codeigniter


RewriteEngine On
RewriteBase /codeigniter
RewriteRule ^(.*)$ index.php/access_denied/$1 [PT,L]
RewriteRule ^(.*)$ - [PT,L]
RewriteRule ^(.*)$ index.php/$1 [PT,L]

Untuk rewritebase /codeigniter silahkan kamu ganti dengan struktur projek codeigniter kamu berada.

Hasilnya:

Menghilangkan index.php url codeigniter

Menghilangkan index.php url codeigniter

Demikian Menghilangkan Index.php di Codeigniter semoga bermanfaat. Kalau tidak mau repot silahkan di download saja filenya. Passwordnya: www.sistemphp.com