Tutorial kali ini kita akan mencoba operasi CRUD PHP dengan menggunakan MySQLi, mulai dari melakukan koneksi ke database, menambah (CREATE), menampilkan (READ), melakukan rubah (UPDATE) dan menghapus (DELETE) data. Caranya tidak terlalu sulit, mungkin bagi teman-teman yang sudah terbiasa dengan perintah query sql pada umumnya. Karena teknik ini, merupakan teknik yang paling mendasasar/ paling awal jika kita ingin menjadi seorang programmer. Langkah-langkahnya sebagai berikut:
1. Buat file koneksi.php
Langkah ini menghubungkan koneksi ke server, disini kita menggunakan Apache sebagai servernya (sudah terdapat di XAMPP).
<?php $server = "localhost";//nama server $user = "root"; //username server $pass = ""; //password $dbase = "db_crudku"; // database yang dipakai //Membuat koneksi $koneksi = mysqli_connect($server, $user, $pass, $dbase); //Mengecek koneksi if(!$koneksi) { die("Koneksi Gagal : ".mysqli_connect_error()); } echo "Koneksi Berhasil"; ?>
Hasilnya akan tampil seperti gambar berikut ini:
Sebelumnya jangan lupa membuat databasenya terlebih dahulu disini nama database yang saya gunakan db_crudku, kemudian lanjutkan dengan membuat tabel, nama tabel disini mahasiswa.
Hasilnya akan terlihat seperti pada gambar berikut:
2. Form Input Data (CREATE)
Buat file dengan nama tambah-data.php
<!DOCTYPE html> <html> <head> <title>Tambah Data</title> </head> <body> <h3>Tambah Data</h3> <form action="insert.php" method="POST"> <table> <tr> <td>Nama Lengkap</td> <td>:</td> <td><input type="text" name="nama"></td> </tr> <tr> <td>Email</td> <td>:</td> <td><input type="email" name="mail"></td> </tr> <tr> <td></td> <td></td> <td> <input type="submit" name="kirim" value="SIMPAN"> <input type="reset" name="clear" value="BATAL"> </td> </tr> </table> </form> </body> </html>
Hasilnya akan tampil seperti pada gambar berikut:
kemudian, lanjutkan dengan membuat file proses untuk insert ke database, insert.php
<?php include "koneksi.php"; $nm = $_POST["nama"]; $em = $_POST["mail"]; date_default_timezone_set("Asia/Jakarta"); $tgl = date("Y:m:d"); // query sql $sql = "INSERT INTO mahasiswa (nama_mahasiswa, email_mahasiswa, tanggal) VALUES('$nm','$em','$tgl')"; $query = mysqli_query($koneksi, $sql) or die (mysqli_error()); if($query){ echo "Data berhasil di insert!"; } else { echo "Error :".$sql."<br>".mysqli_error($koneksi); } mysqli_close($koneksi); ?>
3. Form Tampilan (READ)
Langkah berikutnya dengan membuat form tampil-data.php, yang bertujuan untuk menampilkan data dari database.
<!DOCTYPE html> <html> <head> <title>Tampil Data</title> </head> <body> <h3>Tampil Data</h3> <table border="1"> <thead> <th>No</th> <th>Nama Mahasiswa</th> <th>Email Mahasiswa</th> <th>Tanggal</th> <th colspan="2">Aksi</th> </thead> <tbody> <?php include "koneksi.php"; // query sql $sql = "SELECT * FROM mahasiswa ORDER BY id_mhs DESC"; $query = mysqli_query($koneksi, $sql) or die (mysqli_error()); $no = 1; // no. urut while($data = mysqli_fetch_array($query)){ $id = $data["id_mhs"]; $nm = $data["nama_mahasiswa"]; $em = $data["email_mahasiswa"]; $tg = $data["tanggal"]; echo "<tr> <td>$no</td> <td>$nm</td> <td>$em</td> <td>$tg</td> <td> <a href='rubah-data.php?rubah_id=$id'>Rubah</a> <a href='hapus-data.php?hapus_id=$id'>Hapus</a> </td> </tr>"; $no++; } ?> </tbody> </table> </body> </html>
Hasilnya akan terlihat seperti gambar berikut:
4. Rubah Data (UPDATE)
Jika kita ingin melakukan perubahan data/ update data, jangan lupa untuk membuat form rubah terlebih dahulu, yang bertujuan untuk menampilkan data yang ingin dirubah.
Formnya disini saya akan berikan dengan nama rubah-data.php
<!DOCTYPE html> <html> <head> <title>Rubah Data</title> </head> <body> <h3>Rubah Data</h3> <?php include "koneksi.php"; $ide = $_GET["rubah_id"]; $sql = "SELECT * FROM mahasiswa WHERE id_mhs='$ide'"; $query = mysqli_query($koneksi, $sql) or die (mysqli_error()); if(mysqli_num_rows($query) > 0){ $data = mysqli_fetch_array($query); } ?> <form action="update.php" method="POST"> <input type="hidden" name="id" value="<?php echo $data["id_mhs"];?>"> <table> <tr> <td>Nama Lengkap</td> <td>:</td> <td><input type="text" name="nama" value="<?php echo $data["nama_mahasiswa"];?>"></td> </tr> <tr> <td>Email</td> <td>:</td> <td><input type="email" name="mail" value="<?php echo $data["email_mahasiswa"];?>"></td> </tr> <tr> <td></td> <td></td> <td> <input type="submit" name="edit" value="RUBAH"> </td> </tr> </table> </form> </body> </html>
kemudian dengan lanjutkan dengan membuat file prosesnya, update.php
<?php include "koneksi.php"; $nm = $_POST["nama"]; $em = $_POST["mail"]; $id = $_POST["id"]; date_default_timezone_set("Asia/Jakarta"); $tgl = date("Y:m:d"); // query sql $sql = "UPDATE mahasiswa SET nama_mahasiswa='$nm', email_mahasiswa='$em', tanggal='$tgl' WHERE id_mhs='$id'"; $query = mysqli_query($koneksi, $sql) or die (mysqli_error()); if($query){ echo "Data berhasil dirubah!"; } else { echo "Error".$sql."<br>".mysqli_error($koneksi); } mysqli_close($koneksi); ?>
5. Hapus Data (DELETE)
Teman-teman dapat melanjutkan dengan membuat file proses untuk melakukan hapus data yang ada di database, file yang akan saya buat disini hapus-data.php
<?php include "koneksi.php"; $idh = $_GET["hapus_id"]; // query sql $sql = "DELETE FROM mahasiswa WHERE id_mhs='$idh'"; $query = mysqli_query($koneksi, $sql) or die (mysqli_error()); if($query){ echo "Data berhasil di Hapus!"; } else { echo "Error :".$sql."<br>".mysqli_error($koneksi); } mysqli_close($koneksi); ?>
CRUD PHP dengan menggunakan MySQLi tidaklah sesulit apa yang kita kira, kalau diperhatikan pada penulisan query sql selalu menyertakan variabel yang mengacu ke bagian koneksi.
Demikian tutorial CRUD PHP dengan MySQLi, semoga bermanfaat bagi teman-teman semua 🙂
Source untuk databasenya, bisa diunduh disini:
URL: database_crud