Belajar Membuat Aplikasi Penjualan Dengan Codeigniter

Saya mencerna kegelisahaan Anda internal memulai sparing Codeigniter.

Nanar, barang apa saja yang teristiadat diketahui, dan tidak adv pernah harus tiba berasal mana.

Kabar baiknya,

Pada tutorial bisa jadi ini, saya akan sharing bagaimana memulai sparing codeigniter berusul awal.

Secara step by step.

Jika Sira pemula, anda akan manyukai tutorial ini.

Let’s dive right in.

Dapatkan diskon 75% buntelan hosting dan gratis domain + extra diskon 5% dengan menggunakan kupon: MFIKRI

Antaran Sekarang.!

1. Pengenalan Codeigniter

Codeigniter merupakan satu Web Application Framework (WAF) nan dirancang idiosinkratis buat mempermudah developer web n domestik meluaskan petisi berbasis web.

Codeigniter weduk kumpulan kode berwujud pustaka (library) dan alat (tools) yang dipadukan sedemikian rupa menjadi suatu tulangtulangan kerja (framework).

Codeigniter ialah framework web untuk bahasa pemrograman PHP yang rancang oleh Rick Ellis pada perian 2006, penemu dan pendiri EllisLab.

Ellislab merupakan tim kerja yang kabur pada waktu 2002 dan berputar di bidang pembuatan software dan tool buat para dam web.

Sejak tahun 2022 sampai sekarang, EllisLab sudah lalu menyerahkan hak kepemilikan codeigniter ke British Columbia Institute of Technology (BCIT) untuk proses pengembangan selanjutnya.

Codeigniter n kepunyaan banyak fitur (fasilitas) nan membantu para pengembang PHP cak bagi dapat takhlik aplikasi web secara mudah dan cepat.

Codeigniter memiliki desain nan lebih sederhana dan bersifat fleksibel (tidak dogmatis).

Codeigniter mengizinkan para pengembang web bakal menggunakan framework secara segmental atau secara keseluruhan.

Ini signifikan bahwa codeigniter masih memberikan kedaulatan kepada pengembang untuk menulis babak-putaran kode tertentu di dalam permohonan menggunakan cara konvensional (tanpa framework).

Codeigniter menganut arketipe desain atau arsitektur
Model-View-Controller (MVC)
nan memisahkan bagian kode buat penanganan proses bisnis dengan bagian kode lakukan keperluan presentasi (tampilan).

Dengan menunggangi pola desain ini, memungkinkan para pengembangan web lakukan mengerjakan aplikasi berbasis web secara bersama (teamwork).

Dengan sejenis itu para pengembang web bertambah berfokus pada bagiannya masing-masing tanpa mengganggu bagian yang tak.

Sehingga aplikasi yang dibangun akan radu lebih cepat.

2. Keunggulan Codeigniter

Codeigniter merupakan sebuah toolkit yang ditujukan untuk Anda yang kepingin membangun aplikasi berbasis web dalam bahasa pemrograman PHP.

Tentang sejumlah cap nan ditawarkan makanya codeigniter adalah ibarat berikut:

1. Codeigniter adalah framework PHP yang bersifat open-source.

2. Codeigniter memiliki matra nan boncel dibandingkan dengan framework enggak.

Setelah proses intalasi, framework Codeigniter sekadar berukuran terbatas lebih 2 MB (tanpa dokumentasi atau jika user_guide dihapus).

3. Aplikasi nan dibuat memperalat codeigniter bisa bejalan cepat.

4. Codeigniter menggunakan pola desain Model-View-Controller (MVC) sehingga suatu file tidak terlalu berisi banyak kode.

Situasi ini menjadikan kode lebih mudah dibaca, dipahami, dan dipelihara di kemudian periode.

5. Codeigniter boleh diperluas sesuai dengan kebutuhan.

6. Codeigniter terdokumentasi dengan baik embaran tentang pustaka (Library) dan fungsi yang disediakan oleh codeigniter boleh diperoleh melalui dokumentasi yang disertakan di dalam sampul distribusinya.

7. Codeigniter memiliki library dan helper yang lengkap.

8. Codeigniter memiliki security yang handal seperti xss filtering, session encryption, dan lain-lain.

9. Codeigniter mengizinkan pengembang web menggunakan library alias helper nan bukan disediakan makanya codeigniter seperti: Google Map API, Facebook API, fpdf, dan lain sebagainya.

10. Codeigniter berperangai tidak kaku. sehingga memberikan otonomi kepada developer web bikin mengembangkan tuntutan berbasis web bahkan tanpa framework.

11. Codeigniter memiliki komunitas yang besar dan tersebar di seluruh dunia, sehingga memudahkan para pengembang web kerjakan memecahkan permasalahan (keburukan solving) nan dihadapi para pengembang web di detik meluaskan permohonan berbasis web.

12. Codeigniter mendukung banyak RDBMS (Relational Database Management System) seperti MySQL, MySQLi, SQL Server, Oracle, Maria DB, PostgreSQL, SQLite, dan enggak sebagainya.

13. Codeigniter pada dasarnya menganut Clean URL dan kontributif SEO (Search Engine Optimazation).

Sehingga setiap aplikasi yang dibangun menggunakan codeigniter lebih mudah di index maka itu search engine populer seperti google, yahoo, msn, dan enggak sebagainya.

3. Model-View-Controller (MVC)

MVC

Seperti mana yang saya singgung sebelumnya bahwa codeigniter menganut arsitektur Model-View-Controller (MVC).

Bintang sartan, sangatlah berfaedah bagi Anda buat mengetahui konsep berpangkal desain MVC ini.

Segala apa itu Model-View-Controller (MVC)?

MVC adalah sebuah pendekatan yang ditempuh untuk memisahkan tuntutan menjadi tiga fragmen, yaitu Model, View, dan Controller.

MVC memberikan struktur kepada permohonan, sehingga dapat di raih “code reusability”.

Berikut penjabaran bermula suku cadang-komponen MVC:

1. Model

Transendental merepresentasikan data yang digunakan tuntutan, seperti database, RSS, atau data yang diperoleh berpokok pemanggilan Api, dan usaha yang melibatkan operasi Create, Read, Update, dan Delete (CRUD) data.

2. View

View yakni informasi nan ditampilkan kepada user melampaui browser. Biasanya berupa file HTML atau kode PHP yang menyusun template untuk sebuah website.

Plong codeigniter, view dapat berupa bagian-bagian sebuah pekarangan, template, maupun jenis bukan dari halaman atau template.

3. Controller

Controller adalah “business logic” nan bertugas sebagai jembatan antara model dan view.

Controller akan merespon HTTP request nan hinggap dari user (melalui browser), berpokok request ini controller akan menentukan segala apa yang harus dilakukan.

Didalam codeigniter, secara detail MVC digambarkan sebagai berikut:

MVC Codeigniter

Pada gambar diatas, file “index.php” berperan misal controller utama yang menegur fungsi-kekuatan sumber akar yang digunakan untuk menjalankan controller.

Router mengusut HTTP request kemudian memutuskan Controller mana yang akan digunakan buat menangani request tersebut.

Apabila file cache tersaji, silsilah permohonan akan dilewati dan file cache tersebut yang akan dikirimkan ke browser pengguna.

Sebelum controller dipanggil, HTTP request dan data yang dikirimkan pengguna akan di sortir terlebih dahulu untuk alasan keamanan.

Controller memanggil file Model, Library, Helper, dan file lain nan dibutuhkan untuk menindak HTTP request.

Hasil risikonya akan ditampilkan ole file View kemudian dikirimkan ke browser pengguna buat ditampilkan.

Kalau modus caching diaktifkan, hasil view akan di-cache lebih-lebih dahulu.

Sehingga kalau nanti ada request yang sama, dapat sinkron digunakan.

4.

Instalasi Codeigniter

Codeigniter merupakan framework PHP yang pendirian installnya paling sederhana dibandingkan framework PHP lainnya.

Kamu semata-mata perlu mengextractnya ke web server Anda dan langsung terinstall.

Mudah tidak?

Jika Ia cak hendak menginstall codeigniter di server domestik atau localhost, ada beberapa software yang bisa Kamu gunakan.

Diantaranya nan paling populer adalah WAMPSERVER, MAMP, atau XAMPP.

Anda boleh pilih salah satunya.

Disini saya menggunakan WAMPSERVER,  takdirnya Anda kembali menggunakan wampserver Ia akan menyukai kata sandang ini.

Belaka, jika Sira memperalat XAMPP.

No Ki aib,

Karena saya akan menunjukan mandu install sreg WAMP dan XAMPP.

Ok, untuk mengerjakan instalasi pada codeigniter ikuti langkah berikut:

1. Pastikan Web Peladen telah terinstall dan berjalan (running) di komputer jinjing Anda.

2. Download file codeigniter di situs resminya: www.codeigniter.com

3. Extract file
Codeigniter.zip
ke direktori
C:/wamp/www/
(jikalau Anda menggunakan wampserver). Cuma, jika Anda menunggangi XAMPP. Extract file
Codeigniter.zip
ke direktori
C:/xampp/htdocs/.

4. Pergi ke folder c:/wamp/www/ (kalau Anda menunggangi WAMP) dan
rename
(ganti logo) file folder codeigniter nan baru di extraxt tadi menjadi nama project Kamu.

Misalnya, disini saya ganti menjadi “myproject”. Sehingga kelihatan seperti gambar berikut:

Codeigniter Project

5. Selanjutnya, buka browser Anda. disini saya menunggangi Mozilla Firefox. Kemudian kunjungi URL berikut:

http://localhost/myproject/

Kalau installasi berhasil maka, akan tertentang seperti gambar berikut:

welcome to codeigniter

6. Radu

5.

Konfigurasi dasar Codeigniter

Intern memulai codeigniter, cak semau sejumlah konfigurasi dasar yang terlazim Anda ketahui.

Yaitu autoload.php, config.php, dan database.php.

Semua konfigurasi pada codeigniter, terletak pada satu tempat adalah di dalam folder
application/config.

Config Folder

Bagaimana dan segala saja yang wajib di konfigurasi lega file autoload.php, config.php, dan database.php?

Berikut penjelasannya.

1. Autoload.php

Autoload.php, file ini digunakan bikin mengatur fungsi-fungsi yang akan dimuat otomatis di awal momen program dijalankan.

Untuk berbuat konfigurasi pada file autoload.php, silahkan buka folder:

application/config/autoload.php

begitu juga berikut tulangtulangan berikut:

Autoload Config

Cak semau beberapa hal yang bisa diload secara otamatis diantaranya: packages, libraries, drivers, helper files, custom config files, language files, dan models.

Buat konfigurasi radiks yang teristiadat Sira ketahui yaitu
libraries
dan
helper files.

Situasi ini berujud agar beberapa library dan helper tertentu bepergian secara otomatis.

Untuk melakukan konfigurasi pada libraries, urai file autoload.php dengan text editor seperti notepad++, sublime text, atau lainnya.

kemudian temukan kode berikut:

$autoload['libraries'] = array();

Atur menjadi seperti berikut:

$autoload['libraries'] = array('database');

Puas kode diatas, artinya kita meload library “database” secara otomatis.

Dengan demikian Anda dapat menggunakan fungsi-kemustajaban database pada codeigniter.

Sebagaimana guna:
Query Builder
Class.

Selanjutnya, untuk mengamalkan konfigurasi pada helper files, buka file autoload.php dengan text editor.

kemudian temukan kode berikut:

$autoload['helper'] = array();

Atur menjadi sebagaimana berikut:

$autoload['helper'] = array('url');

Pada kode diatas, artinya kita meload helper “url” secara faali.

Dengan demikian Engkau boleh menunggangi fungsi-fungsi url plong codeigniter.

Sebagai halnya faedah:
base_url(),
site_url(),
URI Segment, dan sebagainya.

2. Config.php

Pada file ini terletak beberapa konfigurasi yang secara standar telah terkonfigurasi.

Tetapi terdapat beberapa konfigurasi yang teradat diperhatikan yaitu:

$config['base_url'] $config['index_page'] $config['encryption_key']
      

Buat konfigurasi dasar, Anda cukup mengetahui konfigurasi
base_url.

Base_url yakni url dasar dari project Kamu.

Bagi mengkonfigurasi base_url, buka file config.php dengan text editor.

Config

kemudian temukan kode berikut:

$config['base_url'] = '';

Atur menjadi seperti berikut:

$config['base_url'] = 'http://localhost/myproject/';

3. Database.php

Dilihat bersumber nama filenya maka Dia sudah dapat menangkap apa kekuatan berpangkal file ini.

File
database.php
digunakan cak bagi mengamalkan konfigurasi nan berkaitan dengan konfigurasi database berasal
website
nan akan dibuat.

Adapun konfigurasi nan perlu diperhatikan yaitu: hostname, username, password, dan database.

Cak bagi melakukan konfigurasi lega database.php. Buka file database.php dengan text editor.

Database Config

Kemudian temukan kode berikut:

$active_group = 'default'; $query_builder = TRUE;  $db['default'] = array( 	'dsn'	=> '', 	'hostname' => 'localhost', 	'username' => '', 	'password' => '', 	'database' => '',  	'dbdriver' => 'mysqli', 	'dbprefix' => '', 	'pconnect' => FALSE, 	'db_debug' => (ENVIRONMENT !== 'production'), 	'cache_on' => FALSE, 	'cachedir' => '', 	'char_set' => 'utf8', 	'dbcollat' => 'utf8_general_ci', 	'swap_pre' => '', 	'encrypt' => FALSE, 	'compress' => FALSE, 	'stricton' => FALSE, 	'failover' => array(), 	'save_queries' => TRUE );
      

Atur menjadi seperti berikut:

$active_group = 'default'; $query_builder = TRUE;  $db['default'] = array( 	'dsn'	=> '', 	'hostname' => 'localhost', // Hostname 	'username' => 'root',   // Username 	'password' => '',    // password 	'database' => 'database_name', //database name 	'dbdriver' => 'mysqli', 	'dbprefix' => '', 	'pconnect' => FALSE, 	'db_debug' => (ENVIRONMENT !== 'production'), 	'cache_on' => FALSE, 	'cachedir' => '', 	'char_set' => 'utf8', 	'dbcollat' => 'utf8_general_ci', 	'swap_pre' => '', 	'encrypt' => FALSE, 	'compress' => FALSE, 	'stricton' => FALSE, 	'failover' => array(), 	'save_queries' => TRUE );
      

6. Hello World Codeigniter

Jika serius dengan codeigniter, Ia harus mencerna bagaimana sebuah controller bekerja.

Buat lebih jelasnya, saya akan sharing kasus sederhana hendaknya Ia boleh memahami bagaimana controller berkreasi.

Disini saya mengangkat kasus merupakan bagaimana menyampaikan text “Hello World” pada browser menggunakan controller.

Let’s dive right in.

Buat sebuat controller dengan logo
Hello.php
sebagaimana gambar berikut:

Controller Hello

Kemudian ketikan kode berikut:

<?php class Hello extends CI_Controller{    function index(){       echo "Hello World";   }  }
      

NB:
Setiap penulisan tera file dan segel class pelalah di dahului dengan aksara Capital.

Setelah itu save dan buka browser Ia, silam kunjungi url berikut:

http://localhost/myproject/index.php/hello

Maka akan akan terlihat text “Hello World” pada browser Anda begitu juga berikut:

Hello World

Kalau Beliau perhatikan dengan seksama, pada dasarnya url puas codeigniter terlihat seperti gambar berikut:

URL Codeigniter

Dimana, terdapat protocol, primary domain, index.php, class name, dan function name.

Mungkin terdegar rumit, tapi sebenarnya tidak.

Untuk lebih jelasnya silahkan tambahkan satu function pun pada Controller Hello.php. disini saya pasrah nama “show”.

Sehingga controller
Hello.php
menjadi seperti berikut:

<?php class Hello extends CI_Controller{    function index(){       echo "Hello World";   }    function show(){       echo "I Make The World Better Place.";   }  }
      

Jika Ia jalankan dengan mengunjungi URL berikut:

http://localhost/myproject/index.php/hello/show

Maka, akan tampil hasilnya seperti berikut:

Better Place

7. Menghilangkan index.php pada URL

Codeigniter ialah framework php yang mendukung clean URL.

Dengan demikian Anda dapat mewujudkan URL yang mudah dibaca dan sekaligus SEO Friendly.

Pada URL aplikasi “Hello World” diatas, dapat dilihat bahwa adanya
index.php
pada url yang terlihat menggangu.

Adakah pendirian bagi menghilangkan index.php dari URL?

Tentu saja, Anda bisa menggunakan file
.htaccess
untuk menghilangkannya.

Bagaimana mewujudkan file
.htaccess?

Mari kita mulai.

Untuk sebuah file dengan etiket
.htaccess
pada web root Ia dan ketikan kode berikut:

RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?/$1 [L]
      

Begitu juga gambar berikut:

htaccess

Kemudian bentang folder
application/config/config.php
dengan text editor.

Config

Kemudian temukan kode berikut:

$config['index_page'] = 'index.php';

Atur menjadi sebagaimana berikut:

$config['index_page'] = '';

Kini silahkan ronda url berikut untu uji coba:

http://localhost/myproject/hello/show

Maka akan terlihat kesannya sebagai halnya berikut:

I Make the world Better Place

Puas gambar diatas, dapat dilihat bahwa URL menjadi lebih beres dan SEO friendly dengan mengademkan
index.php
puas URL.

8. Controller dan View

Plong kasus sebelumnya, Anda telah memafhumi bagaimana mengedepankan text “Hello World” serempak dari controller.

Namun, hal tersebut mudah-mudahan dilakukan di view.

Sekarang saya akan menunjukkan bagaimana menampilkan view melalui controller.

Mari kita mulai.

Pertama, buat sebuah file pada
application/controller
dengan keunggulan
Blog.php.

Kemudian ketikan kode berikut:

<?php class Blog extends CI_Controller {   function __construct()   {       parent::__construct();   }      function index(){       $this->load->view('blog_view');   }    }
      

Kedua, buat sebuah file di
application/views
dengan nama
blog_view.php.

Kemudian ketikan kode berikut:

<!DOCTYPE html> <html lang="en">   <head>     <meta charset="utf-8">     <title>My Blog</title>   </head>   <body>     <h1>Welcome To My Blog.</h1>   </body> </html>
      

Kemudian, urai browser Engkau dan akal masuk controller
blog. Maka akan terlihat hasilnya seperti berikut:

Welcome To my blog

Anda lagi bisa mengirimkan penanda ke view melalui controller.

Laksana contoh, silahkan ubah controller
Blog.php
menjadi seperti berikut:

<?php class Blog extends CI_Controller {     function __construct()     {         parent::__construct();     }      function index(){         $data['title']   = "This Is Title";         $data['content'] = "This Is The Contents";         $this->load->view('blog_view',$data);     }  }
      

Kemudian ganti view
blog_view.php
menjadi seperti berikut:

<!DOCTYPE html> <html lang="en">   <head>     <meta charset="utf-8">     <title><?php echo $title;?></title>   </head>   <body>     <h1><?php echo $content;?></h1>   </body> </html>
      

Kemudian, bentang browser Ia dan akses pula controller
blog. Maka akan tampak hasilnya seperti berikut:

This is Contents

Saya harap Anda dapat memafhumi perbedaannya.

9. Codeigniter dan Bootstrap

Puas kasus sebelumnya, Anda sudah lalu memahami bagaimana memanggil view melewati controller.

Waktu ini, ada hal nan terlampau utama buat Anda ketahui, yaitu mengkombinasikan codeigniter dengan bootstrap.

Segala apa itu
BOOTSTRAP?

Bootstrap adalah toolkit open source bakal dikembangkan dengan HTML, CSS, dan JS.

Dengan kata lain, Bootstrap yaitu framework buat mempercantik user interface (UI).

Bootstrap berwatak responsive.

Dengan kata bukan, merender dengan baik di beragam macam organ (podium) sama dengan tablet maupun mobile phone.

Keren tidak?

Bagaimana mengkombinasikan codeigniter dan bootstrap?

Let’s begin.

Pertama-tama, silahkan download bootstrap di situs resminya
getbootstrap.com.

Bootstrap

Kedua, buat sebuah folder baru pada project (webroot) Anda.

Disini saya pasrah merek folder “assets”.

Kemudian extract file bootsrap yang telah di download tadi kedalam folder
assets.

Sama dengan berikut:

Assets Folder

Selain bootstrap, kita pun membutuhkan
jquery
sepatutnya javascript pada bootstrap bejalan dengan optimal.

Lakukan mendownload Jquery, silahkan download di situs resminya
jquery.com.

Jquery

Kemudian, letakkan file jquery pada folder
assets/js/
seperti gambar berikut:

Jquery js

Mungkin kelihatan invalid rumit, tapi sebenarnya lain.

Agar Sira dapat memahami seperti apa bootstrap, silahkan edit file view
blog_view.php
menjadi seperti berikut:

<!DOCTYPE html> <html lang="en">   <head>     <meta charset="utf-8">     <title><?php echo $title;?></title>     <!-- load bootstrap css file -->     <link href="<?php echo base_url('assets/css/bootstrap.min.css');?>" jalan kereta api="stylesheet">   </head>   <body>      <div class="container">       <div class="jumbotron jumbotron-fluid">         <div class="container">           <h1 class="display-4"><?php echo $content;?></h1>           <p class="lead">This is my first blog.</p>         </div>       </div>     </div>      <!-- load jquery js file -->     <script src="<?php echo base_url('assets/js/jquery.min.js');?>"></script>     <!-- load bootstrap js file -->     <script src="<?php echo base_url('assets/js/bootstrap.min.js');?>"></script>   </body> </html>
      

Jikalau Sira panggil juga controller
blog
plong browser, maka akan terlihat hasilnya seperti berikut:

Blog Bootstrap

Pada gambar diatas, Anda boleh melihat bahwa kita tidak perlu membentuk kode
css
untuk memberikan style lega suatu halaman website.

Demikian pula, jikalau Engkau membutuhkan table yang rupawan. Anda pula tak terlazim mengetikan kode
css
cak bagi memberikan style pada table tersebut.

Melainkan, kamu dapat kontan memiliki table nan cantik secara instan.

Contoh, silahkan edit lagi file view
blog_view.php
menjadi seperti berikut:

<!DOCTYPE html> <html lang="en">   <head>     <meta charset="utf-8">     <title><?php echo $title;?></title>     <!-- load bootstrap css file -->     <link href="<?php echo base_url('assets/css/bootstrap.min.css');?>" landasan kereta api="stylesheet">   </head>   <body>      <div class="container">       <h1><?php echo $content;?></h1>       <table class="table table-striped">         <thead>           <tr>             <th scope="col">#</th>             <th scope="col">First</th>             <th scope="col">Last</th>             <th scope="col">Handle</th>           </tr>         </thead>         <tbody>           <tr>             <th scope="row">1</th>             <td>Mark</td>             <td>Otto</td>             <td>@mdo</td>           </tr>           <tr>             <th scope="row">2</th>             <td>Jacob</td>             <td>Thornton</td>             <td>@fat</td>           </tr>           <tr>             <th scope="row">3</th>             <td>Larry</td>             <td>the Bird</td>             <td>@twitter</td>           </tr>         </tbody>       </table>      </div>      <!-- load jquery js file -->     <script src="<?php echo base_url('assets/js/jquery.min.js');?>"></script>     <!-- load bootstrap js file -->     <script src="<?php echo base_url('assets/js/bootstrap.min.js');?>"></script>   </body> </html>
      

Takdirnya Anda jalankan kembali controller
Blog
sreg browser, maka Ia akan dapatkan kesudahannya seperti berikut:

Bootstrap Table

Keren bukan?

Sepatutnya dapat dipahami dengan baik.

10. Berkreasi dengan Database

Pada segment kelihatannya ini, Anda akan sparing semua situasi yang Anda butuhkan bagi tahu bagaimana berinteraksi dengan database menunggangi codeigniter.

Berangkat berpokok Create, Read, Update, dan Delete.

Yuk kita menginjak.

1. Persiapan database.

Pertama-tama buat sebuah database. Disini saya membentuk sebuah database dengan keunggulan “pos_db”.

Jika Anda mewujudkan database dengan merek yang sederajat, itu lebih baik.

Untuk membuat database, anda dapat mengeksekusi query berikut:

CREATE DATABASE pos_db;

Query diatas akan takhlik sebuah database dengan nama “pos_db”.

Kemudian, buat table “product” dengan struktur andai berikut:

Database Structure

Sira bisa mengeksekusi query berikut untuk menghasilkan table dengan struktur sama dengan diatas.

CREATE TABLE product( product_id INT PRIMARY KEY AUTO_INCREMENT, product_name VARCHAR(100), product_price INT );
      

Kemudian masukan beberapa data kedalam table “product” dengan mengeksekusi query berikut:

INSERT INTO product(product_name,product_price) VALUES  ('Coca Cola','5000'), ('Teh Vas','3700'), ('You C 1000','6300'), ('Ponds Men','18000'), ('Rexona Men','13000');
      

Langkah selanjutnya adalah mengkoneksikan codeigniter dengan database.

Kerjakan mengkoneksikan codeigniter dengan database sangatlah sederhana, silahkan urai file
application/config/database.php

Database Config

Buka file database.php dengan text editor dan temukan kode berikut:

$active_group = 'default'; $query_builder = TRUE;  $db['default'] = array( 	'dsn'	=> '', 	'hostname' => 'localhost', 	'username' => '', 	'password' => '', 	'database' => '', 	'dbdriver' => 'mysqli', 	'dbprefix' => '', 	'pconnect' => FALSE, 	'db_debug' => (ENVIRONMENT !== 'production'), 	'cache_on' => FALSE, 	'cachedir' => '', 	'char_set' => 'utf8', 	'dbcollat' => 'utf8_general_ci', 	'swap_pre' => '', 	'encrypt' => FALSE, 	'compress' => FALSE, 	'stricton' => FALSE, 	'failover' => array(), 	'save_queries' => TRUE );
      

Lalu setting menjadi seperti berikut:

$active_group = 'default'; $query_builder = TRUE;  $db['default'] = array( 	'dsn'	=> '', 	'hostname' => 'localhost', 	'username' => 'root', 	'password' => '', 	'database' => 'pos_db', 	'dbdriver' => 'mysqli', 	'dbprefix' => '', 	'pconnect' => FALSE, 	'db_debug' => (ENVIRONMENT !== 'production'), 	'cache_on' => FALSE, 	'cachedir' => '', 	'char_set' => 'utf8', 	'dbcollat' => 'utf8_general_ci', 	'swap_pre' => '', 	'encrypt' => FALSE, 	'compress' => FALSE, 	'stricton' => FALSE, 	'failover' => array(), 	'save_queries' => TRUE );
      

Silahkan jalankan lagi project Anda plong browser, kalau tak ada error berarti koneksi ke database berhasil.

2. Mengutarakan data dari database ke view (Read).

Pada segment mana tahu ini, saya akan menunjukkan kepada Beliau bagaimana menampilkan data dari database ke view.

Marilah kita mulai.

1. Bakal sebuah file didalam
application/models
dengan nama “Product_model.php”.

Seperti susuk berikut:

Product Model

Bentang file “Product_model.php” dengan text penyunting. Kemudian ketikan kode berikut:

<?php class Product_model extends CI_Model{    function get_product(){     $result = $this->db->get('product');     return $result;   }    }
      

2. Buat sebuah file didalam
application/controllers
dengan stempel “Product.php”.

Sama dengan bentuk berikut:

Product Controller

Bentang file controller “Product.php” dengan text editor. Kemudian ketikan kode berikut:

<?php class Product extends CI_Controller{   function __construct(){     parent::__construct();     $this->load->acuan('product_model');   }   function index(){     $data['product'] = $this->product_model->get_product();     $this->load->view('product_view',$data);   } }
      

3. Bagi sebuah file view dengan tanda “product_view.php”.

Sama dengan kerangka berikut:

Product View File

kemudian ketikan kode berikut:

<!DOCTYPE html> <html lang="en">   <head>     <meta charset="utf-8">     <title>Product List</title>     <!-- load bootstrap css file -->     <link href="<?php echo base_url('assets/css/bootstrap.min.css');?>" rel="stylesheet">   </head>   <body>      <div class="container">         <h1><center>Product List</center></h1>       <table class="table table-striped">         <thead>           <tr>             <th scope="col">#</th>             <th scope="col">Product Name</th>             <th scope="col">Price</th>           </tr>         </thead>         <?php           $count = 0;           foreach ($product->result() as $row) :             $count++;         ?>           <tr>             <th scope="row"><?php echo $count;?></th>             <td><?php echo $row->product_name;?></td>             <td><?php echo number_format($row->product_price);?></td>           </tr>         <?php endforeach;?>         </tbody>       </table>      </div>      <!-- load jquery js file -->     <script src="<?php echo base_url('assets/js/jquery.min.js');?>"></script>     <!-- load bootstrap js file -->     <script src="<?php echo base_url('assets/js/bootstrap.min.js');?>"></script>   </body> </html>
      

Kemudian, jalankan controller “Product” melalui browser Anda, dengan mengunjungi url berikut:

http://localhost/myproject/product

Maka akan terlihat akhirnya sebagaimana berikut:

Product List

3. Insert data ke database (Create).

Pada segment kali ini, saya akan menunjukkan kepada Dia bagaimana insert data ke database.

Mari kita mulai.

1. Buka file contoh “Product_model.php”. kemudian tambahkan satu function sekali lagi seperti berikut:

<?php class Product_model extends CI_Model{    function get_product(){     $result = $this->db->get('product');     return $result;   }   function save($product_name,$product_price){     $data = array(       'product_name' => $product_name,       'product_price' => $product_price     );     $this->db->insert('product',$data);   } }
      

2. Urai file controller “Product.php”. kemudian tambahkan bilang function sekali lagi sebagaimana berikut:

<?php class Product extends CI_Controller{   function __construct(){     parent::__construct();     $this->load->model('product_model');   }   function index(){     $data['product'] = $this->product_model->get_product();     $this->load->view('product_view',$data);   }   function add_new(){     $this->load->view('add_product_view');   }   function save(){     $product_name = $this->input->post('product_name');     $product_price = $this->input->post('product_price');     $this->product_model->save($product_name,$product_price);     redirect('product');   } }
      

3. Buat sebuah file view lagi dengan nama “add_product_view.php”. dengan kode seperti berikut:

<!DOCTYPE html> <html lang="en">   <head>     <meta charset="utf-8">     <title>Add New Product</title>     <!-- load bootstrap css file -->     <link href="<?php echo base_url('assets/css/bootstrap.min.css');?>" rel="stylesheet">   </head>   <body>      <div class="container">       <h1><center>Add New Product</center></h1>         <div class="col-md-6 offset-md-3">         <form action="<?php echo site_url('product/save');?>" method="post">           <div class="form-group">             <cap>Product Name</label>             <input type="text" class="form-control" name="product_name" placeholder="Product Name">           </div>           <div class="form-group">             <segel>Price</label>             <input type="text" class="form-control" name="product_price" placeholder="Price">           </div>           <button type="submit" class="btn btn-primary">Submit</button>         </form>       </div>     </div>      <!-- load jquery js file -->     <script src="<?php echo base_url('assets/js/jquery.min.js');?>"></script>     <!-- load bootstrap js file -->     <script src="<?php echo base_url('assets/js/bootstrap.min.js');?>"></script>   </body> </html>
      

Kemudian, pun ke browser dan ketikan url berikut pada browser Anda:

http://localhost/myproject/product/add_new

Maka akan tampak risikonya begitu juga berikut:

Add Form Product

Masukkan
product name
dan
price
puas textbox, kemudian klik tombol submit.

Maka akan terlihat datanya pada product list seperti berikut:

Product List Create

4. Delete data ke database (Delete).

Pada segment kali ini, saya akan menunjukkan kepada Anda bagaimana menghapus (delete) data ke database.

Marilah kita berangkat.

1. Beber file view “product_view.php”. kemudian ubah menjadi seperti berikut:

<!DOCTYPE html> <html lang="en">   <head>     <meta charset="utf-8">     <title>Product List</title>     <!-- load bootstrap css file -->     <link href="<?php echo base_url('assets/css/bootstrap.min.css');?>" jalan kereta api="stylesheet">   </head>   <body>      <div class="container">         <h1><center>Product List</center></h1>       <table class="table table-striped">         <thead>           <tr>             <th scope="col">#</th>             <th scope="col">Product Name</th>             <th scope="col">Price</th> 			<th width="200">Action</th>           </tr>         </thead>         <?php           $count = 0;           foreach ($product->result() as $row) :             $count++;         ?>           <tr>             <th scope="row"><?php echo $count;?></th>             <td><?php echo $row->product_name;?></td>             <td><?php echo number_format($row->product_price);?></td> 			<td> 				<a href="<?php echo site_url('product/delete/'.$row->product_id);?>" class="btn btn-sm btn-danger">Delete</a> 			<td>           </tr>         <?php endforeach;?>         </tbody>       </table>      </div>      <!-- load jquery js file -->     <script src="<?php echo base_url('assets/js/jquery.min.js');?>"></script>     <!-- load bootstrap js file -->     <script src="<?php echo base_url('assets/js/bootstrap.min.js');?>"></script>   </body> </html>
      

Pada file “product_view.php” diatas kita menambahkan satu kolom pun pada table
product list. Yaitu kolom
action.

Pada kolom action terletak tombol
delete. Sehingga jika Anda jalankan Controller
product, dengan mengunjungi url berikut:

http://localhost/myproject/product/

Maka akan tertentang hasilnya seperti berikut:

Product List Delete

2. Tambahkan sebuah
function delete
lega controller
Product.php.

Akan halnya kodenya bagaikan berikut:

function delete(){ 	$product_id = $this->saudara->segment(3); 	$this->product_model->delete($product_id); 	redirect('product'); }
      

Sehingga terpandang kode lengkap bermula controller
Product.php
seperti berikut:

<?php class Product extends CI_Controller{   function __construct(){     parent::__construct();     $this->load->model('product_model');   }   function index(){     $data['product'] = $this->product_model->get_product();     $this->load->view('product_view',$data);   }   function add_new(){     $this->load->view('add_product_view');   }   function save(){     $product_name = $this->input->post('product_name');     $product_price = $this->input->post('product_price');     $this->product_model->save($product_name,$product_price);     redirect('product');   }   function delete(){ 	$product_id = $this->uri->segment(3); 	$this->product_model->delete($product_id); 	redirect('product');   } }
      

3. Tambahkan sebuah
function delete
plong tendensi
Product_model.php.

Tentang kodenya ibarat berikut:

function delete($product_id){ 	$this->db->where('product_id', $product_id); 	$this->db->delete('product'); }
      

Sehingga terlihat kode lengkap dari model
Product_model.php
seperti berikut:

<?php class Product_model extends CI_Model{    function get_product(){     $result = $this->db->get('product');     return $result;   }   function save($product_name,$product_price){     $data = array(       'product_name' => $product_name,       'product_price' => $product_price     );     $this->db->insert('product',$data);   }   function delete($product_id){ 	$this->db->where('product_id', $product_id); 	$this->db->delete('product');   } }
      

Sekarang kembali ke browser dan kunjungi url berikut:

http://localhost/myproject/product

Maka akan tampil product list begitu juga rang berikut:

Product View Delete

Silahkan klik suatu berpokok pentol
delete
pada kolom
action
buat menyetip record.

Selesai.

5. Update data ke database (Update).

Anda telah mengarifi bagaimana menyodorkan data (READ) dari database ke view, Meng-insert data ke database (CREATE), dan menghapus data ke database (DELETE).

Kini waktunya bakal mengerti bagaimana mengubah data ke database (UPDATE).

Yuk kita tiba.

1. Buka file view “product_view.php”. kemudian ubah menjadi seperti berikut:

<!DOCTYPE html> <html lang="en">   <head>     <meta charset="utf-8">     <title>Product List</title>     <!-- load bootstrap css file -->     <link href="<?php echo base_url('assets/css/bootstrap.min.css');?>" rel="stylesheet">   </head>   <body>      <div class="container">         <h1><center>Product List</center></h1>       <table class="table table-striped">         <thead>           <tr>             <th scope="col">#</th>             <th scope="col">Product Name</th>             <th scope="col">Price</th> 			<th width="200">Action</th>           </tr>         </thead>         <?php           $count = 0;           foreach ($product->result() as $row) :             $count++;         ?>           <tr>             <th scope="row"><?php echo $count;?></th>             <td><?php echo $row->product_name;?></td>             <td><?php echo number_format($row->product_price);?></td> 			<td> 				<a href="<?php echo site_url('product/get_edit/'.$row->product_id);?>" class="btn btn-sm btn-info">Update</a> 				<a href="<?php echo site_url('product/delete/'.$row->product_id);?>" class="btn btn-sm btn-danger">Delete</a> 			<td>           </tr>         <?php endforeach;?>         </tbody>       </table>      </div>      <!-- load jquery js file -->     <script src="<?php echo base_url('assets/js/jquery.min.js');?>"></script>     <!-- load bootstrap js file -->     <script src="<?php echo base_url('assets/js/bootstrap.min.js');?>"></script>   </body> </html>
      

Pada file “product_view.php” diatas kita menambahkan satu tombol pun pada kolom
action. Merupakan tombol
edit.

Sehingga jika Ia jalankan Controller
product, dengan mengunjungi url berikut:

http://localhost/myproject/product/

Maka akan terlihat hasilnya begitu juga berikut:

Product List

2. Tambahkan sebuah
function get_edit
lega controller
Product.php.

Adapun kodenya sebagai berikut:

function get_edit(){ 	$product_id = $this->uri->segment(3); 	$result = $this->product_model->get_product_id($product_id); 	if($result->num_rows() > 0){ 		$i = $result->row_array(); 		$data = array( 			'product_id' 	=> $i['product_id'], 			'product_name' 	=> $i['product_name'], 			'product_price' 	=> $i['product_price'] 		); 		$this->load->view('edit_product_view',$data); 	}else{ 		echo "Data Was Not Found"; 	} }
      

3. Tambahkan sebuah
function get_product_id
sreg controller
Product_model.php.

Tentang kodenya umpama berikut:

function get_product_id($product_id){ 	$query = $this->db->get_where('product', array('product_id' => $product_id)); 	return $query; }
      

4. Buat sebuah view kembali dengan nama
edit_product_view.php. Kemudian ketikan kode berikut:

<!DOCTYPE html> <html lang="en">   <head>     <meta charset="utf-8">     <title>Edit Product</title>     <!-- load bootstrap css file -->     <link href="<?php echo base_url('assets/css/bootstrap.min.css');?>" rel="stylesheet">   </head>   <body>      <div class="container">       <h1><center>Edit Product</center></h1>         <div class="col-md-6 offset-md-3">         <form action="<?php echo site_url('product/update');?>" method="post">           <div class="form-group">             <etiket>Product Name</label>             <input type="text" class="form-control" name="product_name" value="<?php echo $product_name;?>" placeholder="Product Name">           </div>           <div class="form-group">             <segel>Price</tanda>             <input type="text" class="form-control" name="product_price" value="<?php echo $product_price;?>" placeholder="Price">           </div> 		  <input type="hidden" name="product_id" value="<?php echo $product_id?>">           <button type="submit" class="btn btn-primary">Update</button>         </form>       </div>     </div>      <!-- load jquery js file -->     <script src="<?php echo base_url('assets/js/jquery.min.js');?>"></script>     <!-- load bootstrap js file -->     <script src="<?php echo base_url('assets/js/bootstrap.min.js');?>"></script>   </body> </html>
      

5. Tambahkan sebuah
function update
pada controller
Product.php.

Adapun kodenya seumpama berikut:

function update(){ 	$product_id = $this->input->post('product_id'); 	$product_name = $this->input->post('product_name');     	$product_price = $this->input->post('product_price');     	$this->product_model->update($product_id,$product_name,$product_price);    	redirect('product'); }
      

Sehingga terlihat kode lengkap berasal controller
Product.php
sebagaimana berikut:

<?php class Product extends CI_Controller{   function __construct(){     parent::__construct();     $this->load->model('product_model');   }   function index(){     $data['product'] = $this->product_model->get_product();     $this->load->view('product_view',$data);   }   function add_new(){     $this->load->view('add_product_view');   }   function save(){     $product_name = $this->input->post('product_name');     $product_price = $this->input->post('product_price');     $this->product_model->save($product_name,$product_price);     redirect('product');   }   function delete(){ 	$product_id = $this->uri->segment(3); 	$this->product_model->delete($product_id); 	redirect('product');   }   function get_edit(){ 	$product_id = $this->tembuni->segment(3); 	$result = $this->product_model->get_product_id($product_id); 	if($result->num_rows() > 0){ 		$i = $result->row_array(); 		$data = array( 			'product_id' 	=> $i['product_id'], 			'product_name' 	=> $i['product_name'], 			'product_price' => $i['product_price'] 		); 		$this->load->view('edit_product_view',$data); 	}else{ 		echo "Data Was Not Found"; 	}   }   function update(){ 	$product_id = $this->input->post('product_id'); 	$product_name = $this->input->post('product_name');     $product_price = $this->input->post('product_price');     $this->product_model->update($product_id,$product_name,$product_price);     redirect('product');   } }
      

6. Tambahkan sebuah
function update
pada komplet
Product_model.php.

Adapun kodenya sebagai berikut:

function update($product_id,$product_name,$product_price){ 	$data = array(       'product_name' => $product_name,       'product_price' => $product_price     ); 	$this->db->where('product_id', $product_id); 	$this->db->update('product', $data); }
      

Sehingga terlihat kode komplet semenjak abstrak
Product_model.php
seperti berikut:

<?php class Product_model extends CI_Model{    function get_product(){     $result = $this->db->get('product');     return $result;   }   function save($product_name,$product_price){     $data = array(       'product_name' => $product_name,       'product_price' => $product_price     );     $this->db->insert('product',$data);   }   function delete($product_id){ 	$this->db->where('product_id', $product_id); 	$this->db->delete('product');   }   function get_product_id($product_id){ 	$query = $this->db->get_where('product', array('product_id' => $product_id)); 	return $query;   }   function update($product_id,$product_name,$product_price){ 	$data = array(       'product_name' => $product_name,       'product_price' => $product_price     ); 	$this->db->where('product_id', $product_id); 	$this->db->update('product', $data);   } }
      

Sekarang lagi ke browser dan kunjungi url berikut:

http://localhost/myproject/product

Maka akan tampil product list seperti susuk berikut:

Product List Update

Silahkan klik satu berpunca tombol
edit
pada kolom
action
untuk mengupdate record.

Maka akan muncul form editnya sama dengan berikut:

Edit Product Form

Klik tombol update, maka record akan terupdate.

Product List

Selesai.

Related: Tutorial Eksemplar CodeIgniter 4 Bagi Pemula

Kesimpulan

Pembahasan kali ini adalah adapun tutorial lengkap codeigniter untuk pemula.

Mulai dari pengenalan codeigniter, keunggulan codeigniter, konsep MVC, installasi codeigniter, serta konfigurasi asal pada codeigniter.

Dia juga mutakadim mempelajari bagaimana sebuah controller bekerja, dengan kasus hello world codeigniter.

Kamu pula telah membiasakan bagaimana ki menenangkan amarah index.php pada url, sehingga URL menjadi lebih rapi sekaligus SEO Friendly.

Anda juga sudah lalu mempelajari bagaimana menampilkan sebuah view malalui controller.

Anda pun sudah lalu mempelajari bagaimana menyambung codeigniter dengan bootstrap.

Terakhir, anda telah mempelajari bagaimana bekerja dengan database.

Dan Beliau kembali telah mempelari bagaimana membuat petisi CRUD (Create Read Update Delete) dengan codeigniter dan bootstrap.

Dapatkan diskon 75% kelongsong hosting dan cuma-cuma domain + extra diskon 5% dengan menggunakan kupon: MFIKRI

Titipan Waktu ini.!

Makara, tunggu apa lagi…Let’s coding.!


Download PDF

Source: https://mfikri.com/artikel/tutorial-codeigniter