Membuat Aplikasi CRUD Sederhana dengan PHP dan MySQL – Pada tutorial kali ini saya akan membahas tentang ilmu programming PHP. Seperti pada judul artikel ini, saya akan membuat tutorial tentang bagaimana membuat aplikasi CRUD (Create, Read, Update, Delete) pada bahas pemrograman PHP. Dimana keempat komponen ini sangat penting dalam sebuah program. Pada artikel Sebelumnya, saya juga sudah membuat tutorial tentang membuat aplikasi crud dengan java servlets dan jsp.
Nah, pada tutorial kali ini saya akan membuat versi untuk bahasa pemrograman PHP.
Tutorial ini saya buat sangat mudah agar Anda yang pemula bisa mempelajarinya dengan mudah. Karena ini hanya basicnya saja, jadi tidak ada yang namanya kemanan dalam query ke database, saya bua sangat sederhana agar mudah dipelajari dengan mudah.
Ada beberapa hal yang harus disiapkan sebelum memasuki tutorial ini yaitu:
- PHP
- MySQL
Mudahnya, anda bisa menggunakan XAMPP ataupun AppServ, karena pada aplikasi tersebut sudah terinclude PHP maupun MySQL.
Membuat Aplikasi CRUD Sederhana dengan PHP dan MySQL
- Buat beberapa file php yang dibutuhkan seperti pada gambar berikut.
- Langkah berikutnya kita akan membuat databasenya terlebih dahulu di phpmyadmin dengan nama misal tutorialpedia, lalu dumping sql berikut ini.
CREATE TABLE `siswa` ( `siswa_id` int(11) NOT NULL auto_increment, `siswa_nis` int(20) NOT NULL, `siswa_nama` varchar(50) NOT NULL, `siswa_kelas` varchar(10) NOT NULL, `siswa_jurusan` varchar(30) NOT NULL, PRIMARY KEY (`siswa_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ;
- Sekarang kita akan membuat koneksi phpnya terlebih dahulu. Buka file koneksi.php lalu isi dengan kode berikut ini.
<?php $host = "localhost"; $user = "root"; $pass = "root"; $name = "tutorialpedia"; $koneksi = mysql_connect($host, $user, $pass) or die("Koneksi ke database gagal!"); mysql_select_db($name, $koneksi) or die("Tidak ada database yang dipilih!"); ?>
note : untuk bagian $pass biarkan kosong jika tidak ada password di mysql anda.
- Kita coba tampilkan data yang ada didatabase dengan syntaks berikut ini. Buka file index.php lalu masukkan kode berikut:
<!DOCTYPE html> <html> <head> <title>Simple CRUD by TUTORIALPEDIA.NET</title> </head> <body> <h2>Simple CRUD</h2> <p><a href="index.php">Beranda</a> / <a href="tambah.php">Tambah Data</a></p> <h3>Data Siswa</h3> <table cellpadding="5" cellspacing="0" border="1"> <tr bgcolor="#CCCCCC"> <th>No.</th> <th>NIS</th> <th>Nama Lengkap</th> <th>Kelas</th> <th>Jurusan</th> <th>Opsi</th> </tr> <?php //iclude file koneksi ke database include('koneksi.php'); //query ke database dg SELECT table siswa diurutkan berdasarkan NIS paling besar $query = mysql_query("SELECT * FROM siswa ORDER BY siswa_nis DESC") or die(mysql_error()); //cek, apakakah hasil query di atas mendapatkan hasil atau tidak (data kosong atau tidak) if(mysql_num_rows($query) == 0){ //ini artinya jika data hasil query di atas kosong //jika data kosong, maka akan menampilkan row kosong echo '<tr><td colspan="6">Tidak ada data!</td></tr>'; }else{ //else ini artinya jika data hasil query ada (data diu database tidak kosong) //jika data tidak kosong, maka akan melakukan perulangan while $no = 1; //membuat variabel $no untuk membuat nomor urut while($data = mysql_fetch_assoc($query)){ //perulangan while dg membuat variabel $data yang akan mengambil data di database //menampilkan row dengan data di database echo '<tr>'; echo '<td>'.$no.'</td>'; //menampilkan nomor urut echo '<td>'.$data['siswa_nis'].'</td>'; //menampilkan data nis dari database echo '<td>'.$data['siswa_nama'].'</td>'; //menampilkan data nama lengkap dari database echo '<td>'.$data['siswa_kelas'].'</td>'; //menampilkan data kelas dari database echo '<td>'.$data['siswa_jurusan'].'</td>'; //menampilkan data jurusan dari database echo '<td><a href="edit.php?id='.$data['siswa_id'].'">Edit</a> / <a href="hapus.php?id='.$data['siswa_id'].'" onclick="return confirm(\'Yakin?\')">Hapus</a></td>'; //menampilkan link edit dan hapus dimana tiap link terdapat GET id -> ?id=siswa_id echo '</tr>'; $no++; //menambah jumlah nomor urut setiap row } } ?> </table> </body> </html>
Karena data yang ada di tabel siswa masih kosong, maka tidak ada isinya.
- Untuk kita perlu menambahkan data, buka file tambah.php lalu masukkan kode berikut ini.
<!DOCTYPE html> <html> <head> <title>Simple CRUD by TUTORIALPEDIA>NET</title> </head> <body> <h2>Simple CRUD</h2> <p><a href="index.php">Beranda</a> / <a href="tambah.php">Tambah Data</a></p> <h3>Tambah Data Siswa</h3> <form action="tambah-proses.php" method="post"> <table cellpadding="3" cellspacing="0"> <tr> <td>NIS</td> <td>:</td> <td><input type="text" name="nis" required></td> </tr> <tr> <td>Nama Lengkap</td> <td>:</td> <td><input type="text" name="nama" size="30" required></td> </tr> <tr> <td>Kelas</td> <td>:</td> <td> <select name="kelas" required> <option value="">Pilih Kelas</option> <option value="X">X</option> <option value="XI">XI</option> <option value="XII">XII</option> </select> </td> </tr> <tr> <td>Jurusan</td> <td>:</td> <td> <select name="jurusan" required> <option value="">Pilih Jurusan</option> <option value="Teknik Komputer dan Jaringan">Teknik Komputer dan Jaringan</option> <option value="Multimedia">Multimedia</option> <option value="Akuntansi">Akuntansi</option> <option value="Perbankan">Perbankan</option> <option value="Pemasaran">Pemasaran</option> </select> </td> </tr> <tr> <td> </td> <td></td> <td><input type="submit" name="tambah" value="Tambah"></td> </tr> </table> </form> </body> </html>
Dari Form tidak ada yang spesial, hanya form tersebut action nya tambah-proses.php. Tampilannya seperti gambar di bawah ini:
- Nah ketika form tersebut di isi, dan tombol Tambah di klik, maka akan menjalankan file tambah-proses.php.Jadi selanjutnya buat file baru dengan nama tambah-proses.php dan isinya adalah script di bawah ini:
<?php //mulai proses tambah data //cek dahulu, jika tombol tambah di klik if(isset($_POST['tambah'])){ //inlcude atau memasukkan file koneksi ke database include('koneksi.php'); //jika tombol tambah benar di klik maka lanjut prosesnya $nis = $_POST['nis']; //membuat variabel $nis dan datanya dari inputan NIS $nama = $_POST['nama']; //membuat variabel $nama dan datanya dari inputan Nama Lengkap $kelas = $_POST['kelas']; //membuat variabel $kelas dan datanya dari inputan dropdown Kelas $jurusan = $_POST['jurusan']; //membuat variabel $jurusan dan datanya dari inputan dropdown Jurusan //melakukan query dengan perintah INSERT INTO untuk memasukkan data ke database $input = mysql_query("INSERT INTO siswa VALUES(NULL, '$nis', '$nama', '$kelas', '$jurusan')") or die(mysql_error()); //jika query input sukses if($input){ echo 'Data berhasil di tambahkan! '; //Pesan jika proses tambah sukses echo '<a href="tambah.php">Kembali</a>'; //membuat Link untuk kembali ke halaman tambah }else{ echo 'Gagal menambahkan data! '; //Pesan jika proses tambah gagal echo '<a href="tambah.php">Kembali</a>'; //membuat Link untuk kembali ke halaman tambah } }else{ //jika tidak terdeteksi tombol tambah di klik //redirect atau dikembalikan ke halaman tambah echo '<script>window.history.back()</script>'; } ?>
Untuk penjelasan setiap baris kode, Psudah saya masukkan pada file tersebut, silahkan baca sendiri.
- Tahap ini adalah untuk melakukan edit data pada database. File yang akan kita buat adalah file edit.php.Link untuk menuju halaman edit adalah pada file index.php dimana disana pada tabel kolom Opsi ada Link edit dan hapus. Dimana untuk Link edit yang di klik Anda akan mendapatkan Link seperti <a href=”edit.php?id=12?>Edit</a> dimana id ini adalah nilai dari siswa_id. Jika id tersebut adalah 12, maka akan menampilkan data siswa dimana siswa_id=12.Oke, silahkan buat file edit.php dan paste script di bawah ini:
<!DOCTYPE html> <html> <head> <title>Simple CRUD by TUTORIALPEDIA.NET</title> </head> <body> <h2>Simple CRUD</h2> <p><a href="index.php">Beranda</a> / <a href="tambah.php">Tambah Data</a></p> <h3>Edit Data Siswa</h3> <?php //proses mengambil data ke database untuk ditampilkan di form edit berdasarkan siswa_id yg didapatkan dari GET id -> edit.php?id=siswa_id //include atau memasukkan file koneksi ke database include('koneksi.php'); //membuat variabel $id yg nilainya adalah dari URL GET id -> edit.php?id=siswa_id $id = $_GET['id']; //melakukan query ke database dg SELECT table siswa dengan kondisi WHERE siswa_id = '$id' $show = mysql_query("SELECT * FROM siswa WHERE siswa_id='$id'"); //cek apakah data dari hasil query ada atau tidak if(mysql_num_rows($show) == 0){ //jika tidak ada data yg sesuai maka akan langsung di arahkan ke halaman depan atau beranda -> index.php echo '<script>window.history.back()</script>'; }else{ //jika data ditemukan, maka membuat variabel $data $data = mysql_fetch_assoc($show); //mengambil data ke database yang nantinya akan ditampilkan di form edit di bawah } ?> <form action="edit-proses.php" method="post"> <input type="hidden" name="id" value="<?php echo $id; ?>"> <!-- membuat inputan hidden dan nilainya adalah siswa_id --> <table cellpadding="3" cellspacing="0"> <tr> <td>NIS</td> <td>:</td> <td><input type="text" name="nis" value="<?php echo $data['siswa_nis']; ?>" required></td> <!-- value diambil dari hasil query --> </tr> <tr> <td>Nama Lengkap</td> <td>:</td> <td><input type="text" name="nama" size="30" value="<?php echo $data['siswa_nama']; ?>" required></td> <!-- value diambil dari hasil query --> </tr> <tr> <td>Kelas</td> <td>:</td> <td> <select name="kelas" required> <option value="">Pilih Kelas</option> <option value="X" <?php if($data['siswa_kelas'] == 'X'){ echo 'selected'; } ?>>X</option> <!-- jika data di database sama dengan value maka akan terselect/terpilih --> <option value="XI" <?php if($data['siswa_kelas'] == 'XI'){ echo 'selected'; } ?>>XI</option> <!-- jika data di database sama dengan value maka akan terselect/terpilih --> <option value="XII" <?php if($data['siswa_kelas'] == 'XII'){ echo 'selected'; } ?>>XII</option> <!-- jika data di database sama dengan value maka akan terselect/terpilih --> </select> </td> </tr> <tr> <td>Jurusan</td> <td>:</td> <td> <select name="jurusan" required> <option value="">Pilih Jurusan</option> <option value="Teknik Komputer dan Jaringan" <?php if($data['siswa_jurusan'] == 'Teknik Komputer dan Jaringan'){ echo 'selected'; } ?>>Teknik Komputer dan Jaringan</option> <!-- jika data di database sama dengan value maka akan terselect/terpilih --> <option value="Multimedia" <?php if($data['siswa_jurusan'] == 'Multimedia'){ echo 'selected'; } ?>>Multimedia</option> <!-- jika data di database sama dengan value maka akan terselect/terpilih --> <option value="Akuntansi" <?php if($data['siswa_jurusan'] == 'Akuntansi'){ echo 'selected'; } ?>>Akuntansi</option> <!-- jika data di database sama dengan value maka akan terselect/terpilih --> <option value="Perbankan" <?php if($data['siswa_jurusan'] == 'Perbankan'){ echo 'selected'; } ?>>Perbankan</option> <!-- jika data di database sama dengan value maka akan terselect/terpilih --> <option value="Pemasaran" <?php if($data['siswa_jurusan'] == 'Pemasaran'){ echo 'selected'; } ?>>Pemasaran</option> <!-- jika data di database sama dengan value maka akan terselect/terpilih --> </select> </td> </tr> <tr> <td> </td> <td></td> <td><input type="submit" name="simpan" value="Simpan"></td> </tr> </table> </form> </body> </html>
Jika sudah silahkan simpan, dan hasil tampilan dari script di atas seperti gambar di bawah ini:
- form edit diatas jika di klik tombol Simpan, maka akan menjalankan file edit-proses.php, dimana file ini adalah proses untuk melakukan update data ke database.Buat file edit-proses.php dan paste script di bawah ini:
<?php //mulai proses edit data //cek dahulu, jika tombol simpan di klik if(isset($_POST['simpan'])){ //inlcude atau memasukkan file koneksi ke database include('koneksi.php'); //jika tombol tambah benar di klik maka lanjut prosesnya $id = $_POST['id']; //membuat variabel $id dan datanya dari inputan hidden id $nis = $_POST['nis']; //membuat variabel $nis dan datanya dari inputan NIS $nama = $_POST['nama']; //membuat variabel $nama dan datanya dari inputan Nama Lengkap $kelas = $_POST['kelas']; //membuat variabel $kelas dan datanya dari inputan dropdown Kelas $jurusan = $_POST['jurusan']; //membuat variabel $jurusan dan datanya dari inputan dropdown Jurusan //melakukan query dengan perintah UPDATE untuk update data ke database dengan kondisi WHERE siswa_id='$id' <- diambil dari inputan hidden id $update = mysql_query("UPDATE siswa SET siswa_nis='$nis', siswa_nama='$nama', siswa_kelas='$kelas', siswa_jurusan='$jurusan' WHERE siswa_id='$id'") or die(mysql_error()); //jika query update sukses if($update){ echo 'Data berhasil di simpan! '; //Pesan jika proses simpan sukses echo '<a href="edit.php?id='.$id.'">Kembali</a>'; //membuat Link untuk kembali ke halaman edit }else{ echo 'Gagal menyimpan data! '; //Pesan jika proses simpan gagal echo '<a href="edit.php?id='.$id.'">Kembali</a>'; //membuat Link untuk kembali ke halaman edit } }else{ //jika tidak terdeteksi tombol simpan di klik //redirect atau dikembalikan ke halaman edit echo '<script>window.history.back()</script>'; } ?>
Silahkan simpan. lalu jalankan. Untuk setiap penjelasan sudah saya sertakan di tiap baris kode.
- Terakhir, sekarang kita akan mencoba menghapus data tersebut dari database. file yang akan kita buat adalah hapus.php, dan isi scriptnya seperti di bawah ini:
<?php //memulai proses hapus data //cek dahulu, apakah benar URL sudah ada GET id -> hapus.php?id=siswa_id if(isset($_GET['id'])){ //inlcude atau memasukkan file koneksi ke database include('koneksi.php'); //membuat variabel $id yg bernilai dari URL GET id -> hapus.php?id=siswa_id $id = $_GET['id']; //cek ke database apakah ada data siswa dengan siswa_id='$id' $cek = mysql_query("SELECT siswa_id FROM siswa WHERE siswa_id='$id'") or die(mysql_error()); //jika data siswa tidak ada if(mysql_num_rows($cek) == 0){ //jika data tidak ada, maka redirect atau dikembalikan ke halaman beranda echo '<script>window.history.back()</script>'; }else{ //jika data ada di database, maka melakukan query DELETE table siswa dengan kondisi WHERE siswa_id='$id' $del = mysql_query("DELETE FROM siswa WHERE siswa_id='$id'"); //jika query DELETE berhasil if($del){ echo 'Data siswa berhasil di hapus! '; //Pesan jika proses hapus berhasil echo '<a href="index.php">Kembali</a>'; //membuat Link untuk kembali ke halaman beranda }else{ echo 'Gagal menghapus data! '; //Pesan jika proses hapus gagal echo '<a href="index.php">Kembali</a>'; //membuat Link untuk kembali ke halaman beranda } } }else{ //redirect atau dikembalikan ke halaman beranda echo '<script>window.history.back()</script>'; } ?>
Jangan lupa disimpan.
Sedikit penjelasan untuk script hapus di atas. Jika Anda mengklik tombol/link hapus pada file index.php, Anda akan mendapatkan Link seperti ini www.hostingAnda.com/hapus.php?id=12, ini artinya Script akan mendeteksi dari URL tersebut berapa id nya, misalkan disana id=12, maka script akan menghapus data siswa dimana siswa_id=12.
Itulah tutorial sederhana tentang cara membuat aplikas crud dengan php dan mysql.
Untuk mendownload projek Membuat CRUD dengan PHP dan MySQL anda bisa klik link berikut ini.
Demo
Demikian tutorial membuat crud dengan php dan mysql.
Semoga bermanfaat.
Password nya apa gan? Btw artikel nya sangat bermanfaat.
password nya apa yah?
artikel yang bermanfaat banget