MySql adalah salah satu contoh dari database. Ada lagi lainnya seperti; Oracle, MongoDB, postgresql, dan masih banyak lagi. Pada bahasan kita kali ini, database yang digunakan adalah MySql.
Lalu apa itu phpMyAdmin? phpMyAdmin adalah sebuah GUI atau Graphical User Interface dalam bentuk aplikasi web yang memudahkan kita untuk mengelola database MySql. Membuat, mengubah, menghapus, dan lainnya, menjadi mudah dilakukan. Hanya tinggal klik saja.
Kemudian, pastikan PC/laptop kita sudah terinstall aplikasi XAMPP. XAMPP merupakan aplikasi paketan yang di dalamnya terdapat web server (
Apache) dan
database server (MySql). Sekaligus juga akan menginstall
phpMyAdmin.
Oke, kalau XAMPP sudah disiapkan, langkah selanjutnya adalah menjalankan service Apache & MySql-nya.
Caranya, jalankan XAMPP Control Panel atau kalau Anda menggunakan macOS namanya adalah manager-osx. Jika sudah, klik tombol Start pada MySql dan Apache. Tombol akan berubah menjadi Stop. Berikut tampilan manager-osx.
Bila sudah running, kita sudah bisa menjalankan phpMyAdmin-nya. Caranya adalah dengan mengetik http://localhost/phpmyadmin pada address bar browser. Lalu tekan Enter.
Selanjutnya, kita akan membuat database. Untuk membuat database, klik menu Databases. Tampilan baru muncul dan terlihat ada beberapa database default atau bawaan dan juga kolom untuk membuat database. Pada kolom tersebut, ketikkan nama database yang ingin Anda buat. Sesuai judul di atas, kita akan membuat database kampus. Lalu klik Create.
Setelah itu, akan muncul notifikasi yang menandakan bahwa database berhasil dibuat dan langsung diarahkan untuk membuat table. Di sini kita akan buat table mahasiswa dengan 7 kolom atau field. Lalu klik Go.
Ada 2 jenis database, yakni RDBMS dan Non-RDBMS. RDBMS merupakan database yang dapat saling berelasi sedangkan Non-RDBMS kebalikannya. RDBMS memiliki konsep database-table (di dalam database terdapat table-table yang berelasi) sedangkan Non-RDMS tidak berkonsep demikian. Contoh RDBMS: Mysql, Oracle dan contoh Non-RDBMS: NoSql, MongoDB.
Kemudian, kita akan mendefinisikan kolom atau field apa saja yang akan ada pada table mahasiswa. Kita akan membuat kolom untuk; id, nim, nama, jenis_kelamin, tanggal_lahir, alamat, dan jurusan. Khusus untuk kolom id, kita jadikan sebagai primary key dan nilainya adalah auto increment.
Name adalah nama dari kolom atau field-nya. Type adalah tipe data dari kolom atau field-nya. Length/Values adalah panjang karakternya. Bila sudah, klik Save pada pojok kanan bawah. Selesai! Table mahasiswa berhasil dibuat.
Kita bisa melihat struktur dari table mahasiswa dengan mengklik menu Structure. Tampilannya akan seperti berikut.
Dan untuk melihat data yang ada di dalam table mahasiswa, caranya adalah dengan mengklik menu Browse. Seperti ini tampilannya jika datanya kosong.
Untuk memasukkan data ke dalam table mahasiswa, pilih menu Insert. Tampilan form akan muncul dan isi sesuai dengan kolom atau fieldnya, kecuali kolom id karena dia akan otomatis terisi dengan running number (fungsi auto increment). Terakhir, klik Go.
Jika berhasil dimasukkan, akan ada notifikasi berhasil seperti berikut.
Lalu, bila kita ke menu Browse, datanya akan terlihat di sana.
Postingan kali ini kita akan bahas cara membuat CRUD dengan PHP dan MySql untuk pemula. Ohiya, bagi yang belum tau, CRUD merupakan singkatan dari Create, Read, Update, dan Delete. Sistem yang akan kita buat ini akan memuat keempat action tersebut dan data yang diolah adalah data mahasiswa.
Gambaran Konsep Sistem CRUD
Begini konsep sistem CRUD ini. Pertama, kita buat sebuah form input data dan jika kita tekan tombol submit atau simpan, maka sebuah data akan ter-create di database. Data tersebut nantinya akan kita tampilkan di halaman aplikasi web, inilah read.
Selanjutnya, jika data sudah tampil di halaman aplikasi web, mungkin saja ada data yang salah input atau memang ingin mengubah suatu data. Kita pilih data tersebut, lalu ubah melalui form edit data dan jika kita tekan tombol simpan atau update, data di database akan ter-update. Terakhir delete, dimana data yang kita pilih akan dihapus dari database.
Begitu gambaran konsepnya. Lalu bagaimana gambaran fisik atau tampilan sistem CRUD atau aplikasi webnya?
Gambaran 'Fisik' atau Tampilan Sistem CRUD
Jadi, kita akan membuat sebuah tabel yang berisi data mahasiswa. Salah satu kolom tabelnya adalah kolom action, digunakan untuk menempatkan link edit dan link hapus data. Lalu dua buah form; yang satu untuk form input data dan satunya lagi untuk form edit.
Mulai Development
Pertama, silakan Anda buat database kampus dan juga table mahasiswa di database tersebut. Saya sudah buatkan tutorial lengkapnya di postingan ini: Cara Membuat Database Kampus dan Table Mahasiswa Lewat phpMyAdmin. Tinggal ikuti langkah-langkahnya (sampai berhasil membuat tablenya) saja karena sistem yang akan kita buat ini akan mengikuti desain database & table tersebut.
Kemudian, kita akan buat form input data dengan HTML. Kita harus sediakan kolom input sesuai desain table di atas, mulai dari kolom NIM sampai jurusan. Kita siapkan foldernya dulu di htdocs, misalnya simple_crud. Lalu buat file index.php yang nantinya akan menampilkan link untuk input data, juga table datanya.
File index.php
4 | < title >Sistem CRUD Sederhana Data Mahasiswa</ title > |
7 | < a href = "input.html" >Tambah Data</ a > |
Tampilan index.php
Kita lihat pada codingan HTML di atas, kita membuat sebuah link yang mengarah pada file input.html. Inilah selanjutnya yang harus kita buat.
File input.html
04 | < title >Form Input Data</ title > |
07 | < form action = "prosesSimpan.php" method = "post" > |
09 | < input type = "text" name = "nim" > |
12 | < input type = "text" name = "nama" > |
15 | < select name = "jenis_kelamin" > |
16 | < option value = "" >Pilih</ option > |
17 | < option value = "P" >Pria</ option > |
18 | < option value = "W" >Wanita</ option > |
22 | < input type = "text" name = "tanggal_lahir" > |
25 | < textarea name = "alamat" ></ textarea > |
28 | < input type = "text" name = "jurusan" > |
30 | < input type = "submit" value = "Simpan" > < input type = "reset" value = "Reset" > |
Tampilan input.html
Di atas, kita telah membuat sebuah form input data. Data yang diinput pada form tersebut akan dikirim ke file prosesSimpan.php untuk diolah dan dalam kasus ini data akan disimpan ke database. Data dikirim dengan menggunakan metode POST, terlihat dari atribut method form di atas.
Untuk lebih detil pembahasan form, Anda bisa melihat ke tutorial Cara Membuat Sistem Login dengan Nama dan Nomor Induk Mahasiswa. Saya sangat menyarankan Anda untuk membacanya agar lebih memahami codingan input.html di atas.
Selanjutnya, yang harus kita buat adalah sebuah file berekstensi php yang digunakan untuk mengolah data yang dikirim dari form input data, yakni prosesSimpan.php. File ini akan menerima data dari form input data lalu akan mengarahkan data tersebut agar disimpan ke database.
File prosesSimpan.php
02 | include ( 'koneksi.php' ); |
05 | $nama = $_POST [ 'nama' ]; |
06 | $jenis_kelamin = $_POST [ 'jenis_kelamin' ]; |
07 | $tgl_lahir = $_POST [ 'tanggal_lahir' ]; |
08 | $alamat = $_POST [ 'alamat' ]; |
09 | $jurusan = $_POST [ 'jurusan' ]; |
11 | $query = mysqli_query( $connect , "INSERT INTO mahasiswa(nim, nama, jenis_kelamin, tanggal_lahir, alamat, jurusan) VALUES('$nim', '$nama', '$jenis_kelamin', '$tgl_lahir', '$alamat', '$jurusan')" ); |
14 | echo 'Data berhasil disimpan. Klik <a href="input.html">di sini</a> untuk input data kembali.' ; |
16 | echo 'Data gagal diinput. Silakan coba lagi input <a href="input.html">di sini</a>' ; |
Begini penjelasan codingannya. Semua data yang dikirim dari form input data, akan diterima dan ditampung nilai/isinya ke dalam variabel-variabel. Terlihat total ada 6 variabel, yakni; $nim, $nama, $jenis_kelamin, $tgl_lahir, $alamat, dan $jurusan.
Selanjutnya, variabel yang berisi data tersebut akan di masukkan ke dalam query insert MySql untuk disimpan isinya ke database. Tugas tersebut dilakukan oleh fungsi mysqli_query(). mysqli_query() membutuhkan 2 parameter agar bisa berjalan; pertama koneksi ke databasenya dan kedua adalah query insertnya.
Untuk koneksi databasenya, diwakilkan oleh variabel $connect. Variabel $connect ini berisi status apakah sudah terkoneksi ke database atau belum. Anda melihat include('koneksi.php') di atas bukan? Yap, di sanalah pendefinisian atau pembuatan variabel $connect tersebut.
Kita memerlukan satu tambahan file php lagi yakni koneksi.php. Penjelasannya cukup panjang, sehingga saya buatkan posting terpisah. Anda bisa melihat ke posting Tutorial PHP: Cara Membuat Koneksi ke Database MySql.
Sedikit modifikasi untuk koneksi.php. Kita hanya perlu menampilkan pesan eror jika koneksi database gagal. Kalau berhasil terkoneksi, tidak perlu menampilkan apa-apa. Untuk itu, kita bisa menghapus bagian echo "Koneksi ke database berhasil";
2 | $connect = mysqli_connect( "localhost" , "root" , "" , "kampus" ); |
7 | echo "Koneksi ke database gagal. Mohon periksa lagi config koneksi database Anda" ; |
Kembali ke fungsi mysqli_query(). Hasil eksekusi dari fungsi tersebut disimpan ke dalam variabel $query. Kemudian, beri kondisi jika query berhasil dijalankan maka akan menampilkan "Data berhasil disimpan ...". Dan bila gagal, akan muncul "Data gagal diinput ..."
Simpan perubahan file prosesSimpan.php lalu buka kembali form input data. Anda akan melihat data yang diinput tersimpan di database. Itu tandanya, Anda sudah berhasil membuat sistem CRUD sederhana part I (create) ini.
Nama=Ahmad Saifulloh
ReplyDeleteKelas=XII RPL 2
Nama:lusy anzarwati
ReplyDeleteKls:XII rpl 2
Nama:isroul aminah
ReplyDeleteKelas:XII RPL 02
Nama=Dea Anggin Pramesty
ReplyDeleteKelas=XII RPL 02
Nama : Erlina Kurnia Sari
ReplyDeleteKelas : XII rpl 02
Nama: Frendy Candra Andriansyah
ReplyDeleteKelas: XII RPL 02
Nama: Yusuf Maulana
ReplyDeleteKelas:XII RPL 02
Nama: Lia Mahfudhotul Khasanah
ReplyDeleteKelas:XII RPL 02
Nama: Rifki Andrian
ReplyDeleteKelas: XII RPL 02
Nama: M Aris Agung Maulana
ReplyDeleteKelas: XII RPL 02
Nama :Novia Khoirun Nisa'
ReplyDeleteKelas :XII RPL 02
Nama:Desi Rahayu
ReplyDeleteKelas:XII RPL 02
Nama: Muhammad fatkhurrozaq
ReplyDeleteKelas: XII RPL 02
Nama:Muhammad farizki
ReplyDeleteKelas:Xll RPL 02
Nama: Fitri Mulyani
ReplyDeleteKelas: Xll RPL 02
Nama : A Heru Setiawan
ReplyDeleteKelas: Xll rpl 2
Nama:Yunita oktafiani
ReplyDeleteKelas:XII Rpl 2
Nama :Nency Vitaria Hikmawati
ReplyDeleteKelas : XII RPL 2
Nama : Nur hidayanti
ReplyDeleteKelas : XII rpl 02
Nama: Febriyani Ningsih
ReplyDeleteKelas: XII RPL 01
Nama: Ahmad Dindan Romadhoni
ReplyDeleteKelas: XII RPL1
Nama: wahyu aji santoso
ReplyDeleteKelas : XII RPL 01
NAMA : NIHLATUL LAILA SHOFA
ReplyDeleteKELAS : XII RPL 01
This comment has been removed by the author.
ReplyDeleteNama: Ervia Nanda Ristia Ningsih
ReplyDeleteKelas : XII RPL 01
Nama: Nia Nafisah
ReplyDeleteKelas: XII RPL 01
Nama: Saris Tri Setia Ningsih
ReplyDeleteKelas : XII RPL 01
This comment has been removed by the author.
ReplyDeleteNama : Cindi Novitasari
ReplyDeleteKls. : Xll Rpl 01
Nama:M.Lukmanul Hakim
ReplyDeleteKls:XII Rpl 01
Nama : Arini Atmilatan Naja
ReplyDeleteKls. : Xll Rpl 01
Nama.Ahmad Didik Hermawan
ReplyDeleteKls:Xll RpL 01
Nama : Fita Aristia Zulianti
ReplyDeleteKelas : XII RPL 03
Nama : Tutut Sri Rahayu
ReplyDeleteKls : XII Rpl 3
Nama: Novita Nailin Nisa
ReplyDeleteKelas : XII rpl 03
Nama : Laisatun setya
ReplyDeleteKelas : XII RPL 03
Nama: Retna sari
ReplyDeleteKelas:Xll RPL 3
Nama : Dita Ristiya Sari
ReplyDeleteKelas : XII RPL 3
Nama : Nataya Edgar Agus Lutfianto
ReplyDeleteKelas : XII RPL 3
Nama : Muhammad adiriyanto
ReplyDeleteKelas : XII RPL3
NAMA:DIAN PRATIWI
ReplyDeleteKELAS:XII RPL 01
Nama: Nurul falah
ReplyDeleteKelas: XII RPL 03