loading...
Cara Membuat Aplikasi CRUD Sederhana Dengan PHP dan MySQL - Pada artikel ini akan saya bahas untuk anda sebagai pemula yang sedang mempelajari bagaimana cara input data, menampilkan data, edit data, dan hapus data pada bahasa pemrograman PHP dan database MySQL. Tutorial ini dibuat dengan sederhana supaya anda bisa lebih mudah untuk memahami setiap perintah dari kode PHP dan MySQL. Jadi, tidak ada yang namanya keamanan dalam query ke database.
Sesuai dengan judulnya yaitu CRUD (Create, Read, Update, Delete) dengan PHP dan MySQL. Jadi kita akan membuat aplikasi sederhana bagaimana cara Create (Insert), Read (Menampilkan), Update (Edit), dan Delete (Hapus) data dari database mysql dengan menggunakan bahasa pemrograman PHP.
Sebelum memulai ada beberapa file PHP yang akan kita buat antara lain sebagai berikut:
Selain file PHP di atas, nanti kita juga akan membuat sebuah database mysql. Jadi, langsung saja kita menuju ke langkah-langkahnya sebagai berikut.
Pertama kita harus membuat sebuah database mysql terlebih dahulu. Dalam kasus ini akan dicontohkan dengan database yang bernama db_mahasiswa yang di dalamnya terdapat sebuah tabel yang bernama mhs. Di dalam tabel tersebut terdapat beberapa field diantaranya: id, nim, nama, kelas, dan jurusan.
Jika database sudah dibuat, sekarang dumping script SQL di bawah ini:
Dari script di atas kita mendapatkan tampilan tabel dengan struktur seperti di bawah ini:
Sampai di sini kita sudah berhasil membuat database dan juga tabel di dalamnya. Jadi, untuk saat ini kita biarkan saja tabel tersebut kosong karena data akan kita inputkan setelah semua persiapan sudah selesai.
Setelah database mysql berhasil dibuat, kini saatnya kita membuat beberapa file PHP yang terdiri dari koneksi.php, index.php, tambah.php, tambah-proses.php, edit.php, edit-proses.php, dan hapus.php. Untuk itu silakan anda buka text editor kemudian ikuti langkah langkah di bawah ini.
koneksi.php
Salin script php di bawah ini kemudian simpan dengan nama koneksi.php.
Scipt di atas berfungsi untuk membuat koneksi antara PHP dengan database MySQL. Di sana terlihat bahwa nama database di isi dengan database yang telah kita buat tadi. Selain itu pada bagian user di isi dengan root, dan pada bagian pass isi dengan password mysql anda. Di sini sengaja saya kosongkan karena saya tidak menggunakan password untuk mysql nya.
Tahap selanjutnya adalah menampilkan data (Read) dari database mysql pada browser. Untuk menampilkan data, kita akan membuat file yang bernama index.php. Silakan salin script di bawah ini kemudian simpan dengan nama index.php :
index.php
Dari gambar di atas dapat kita lihat sebuah tabel yang terdapat tulisan "Tidak ada data!" karena memang belum ada data yang diinputkan de dalam database. Maka pada tahap selanjutnya kita akan melakukan input data ke dalam database.
Tahap selanjutnya yaitu input data dengan perintah INSERT INTO dengan menggunakan sebuah file php yang bernama tambah.php. Di dalam file tersebut ada semacam perintah query ke database yang berfungsi untuk meng-input data. Salin script di bawah ini kemudian simpan dengan nama tambah.php.
tambah.php
Berikut tampilan dari file tambah.php :
Pada gambar di atas terlihat tampilannya memang terlihat sangat sederhana yang terdiri dari beberapa input teks, select, dan satu buah tombol. Jika tombol Tambah tersebut kita klik, maka akan menjalankan file tambah-proses.php yang berisi query ke database.
Untuk itu silakan buat file tambah-proses.php dari script di bawah ini, kemudian simpan dengan nama tambah-proses.php.
tambah-proses.php
Setelah berhasil meng-inputkan data ke dalam database, selanjutnya kita akan mencoba mengedit (update) data yang ada di dalam database tersebut dengan query UPDATE. Untuk itu kita akan membuat sebuah file PHP yang bernama edit.php. Dimana file edit.php tersebut akan diakses melalui halaman index.php yang pada bagian kolom opsi terdapat link edit dan hapus.
Dimana untuk link edit yang di klik anda akan mendapatkan link seperti <a href=”edit.php?id=2″>Edit</a> dimana id ini adalah nilai dari id mahasiswa pada database. Jika id tersebut adalah 2, maka akan menampilkan data mahasiswa yang memiliki id=2.
Untuk itu langsung saja disalin script di bawah ini, kemudian simpan dengan nama edit.php
edit.php
Berikut adalah tampilan dari file edit.php :
Nah, jika tombol simpan diklik, maka akan menjalankan file edit-proses.php, file ini berfungsi untuk melakukan proses update data ke dalam database . Untuk itu, langsung saja kita buat file edit-proses.php dengan script di bawah ini.
edit-proses.php
Langkah terakhir adalah melakukan perintah Delete untuk menghapus data dari database. File yang akan kita buat adalah hapus.php.
Silakan salin script berikut ini kemudian simpan dengan nama hapus.php :
hapus.php
Dari script hapus.php di atas dijelaskan bahwa jika kita mengklik link hapus pada index.php, maka kita akan mendapatkan link seperti hapus.php?id=2. Ini artinya script di atas mendeteksi dari url tersebut berapa id nya, jika id=2, maka script akan menghapus data mahasiswa yang memiliki id=2.
Itulah langkah-langkah membuat aplikasi CRUD sederhana yang mudah anda pahami. Semoga artikel ini bermanfaat bagi rekan-rekan semua. Selamat mencoba!!
Sesuai dengan judulnya yaitu CRUD (Create, Read, Update, Delete) dengan PHP dan MySQL. Jadi kita akan membuat aplikasi sederhana bagaimana cara Create (Insert), Read (Menampilkan), Update (Edit), dan Delete (Hapus) data dari database mysql dengan menggunakan bahasa pemrograman PHP.
Sebelum memulai ada beberapa file PHP yang akan kita buat antara lain sebagai berikut:
Selain file PHP di atas, nanti kita juga akan membuat sebuah database mysql. Jadi, langsung saja kita menuju ke langkah-langkahnya sebagai berikut.
Cara Membuat Aplikasi CRUD Sederhana Dengan PHP dan MySQL
1. Membuat Database
Pertama kita harus membuat sebuah database mysql terlebih dahulu. Dalam kasus ini akan dicontohkan dengan database yang bernama db_mahasiswa yang di dalamnya terdapat sebuah tabel yang bernama mhs. Di dalam tabel tersebut terdapat beberapa field diantaranya: id, nim, nama, kelas, dan jurusan.
Jika database sudah dibuat, sekarang dumping script SQL di bawah ini:
CREATE TABLE mhs( id int(11) NOT NULL auto_increment, nim varchar(20) NOT NULL, nama varchar(50) NOT NULL, kelas varchar(10) NOT NULL, jurusan varchar(30) NOT NULL, PRIMARY KEY (id));
Dari script di atas kita mendapatkan tampilan tabel dengan struktur seperti di bawah ini:
Sampai di sini kita sudah berhasil membuat database dan juga tabel di dalamnya. Jadi, untuk saat ini kita biarkan saja tabel tersebut kosong karena data akan kita inputkan setelah semua persiapan sudah selesai.
2. Koneksi Database Dengan PHP
Setelah database mysql berhasil dibuat, kini saatnya kita membuat beberapa file PHP yang terdiri dari koneksi.php, index.php, tambah.php, tambah-proses.php, edit.php, edit-proses.php, dan hapus.php. Untuk itu silakan anda buka text editor kemudian ikuti langkah langkah di bawah ini.
koneksi.php
Salin script php di bawah ini kemudian simpan dengan nama koneksi.php.
<? $host = "localhost"; $user = "root"; $pass = ""; $name = "db_mahasiswa"; $koneksi = mysql_connect($host, $user, $pass) or die("Koneksi ke database gagal!"); mysql_select_db($name, $koneksi) or die("Tidak ada database yang dipilih!"); ?>
Scipt di atas berfungsi untuk membuat koneksi antara PHP dengan database MySQL. Di sana terlihat bahwa nama database di isi dengan database yang telah kita buat tadi. Selain itu pada bagian user di isi dengan root, dan pada bagian pass isi dengan password mysql anda. Di sini sengaja saya kosongkan karena saya tidak menggunakan password untuk mysql nya.
3. Menampilkan Data (Read/Select)
Tahap selanjutnya adalah menampilkan data (Read) dari database mysql pada browser. Untuk menampilkan data, kita akan membuat file yang bernama index.php. Silakan salin script di bawah ini kemudian simpan dengan nama index.php :
index.php
<!DOCTYPE html> <html> <head> <title>Aplikasi CRUD</title> </head> <body> <h2>Simple CRUD</h2> <p><a href="index.php">Beranda</a> / <a href="tambah.php">Tambah Data</a></p> <h3>Data Mahasiswa</h3> <table cellpadding="5" cellspacing="0" border="1"> <tr bgcolor="#CCCCCC"> <th>No.</th> <th>NIM</th> <th>Nama</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 mhs ORDER BY nim 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['nim'].'</td>'; //menampilkan data nis dari database echo '<td>'.$data['nama'].'</td>'; //menampilkan data nama lengkap dari database echo '<td>'.$data['kelas'].'</td>'; //menampilkan data kelas dari database echo '<td>'.$data['jurusan'].'</td>'; //menampilkan data jurusan dari database echo '<td><a href="edit.php?id='.$data['id'].'">Edit</a> / <a href="hapus.php?id='.$data['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>Berikut tampilan dari file index.php :
Dari gambar di atas dapat kita lihat sebuah tabel yang terdapat tulisan "Tidak ada data!" karena memang belum ada data yang diinputkan de dalam database. Maka pada tahap selanjutnya kita akan melakukan input data ke dalam database.
4. Memasukkan Data (Create/Insert)
Tahap selanjutnya yaitu input data dengan perintah INSERT INTO dengan menggunakan sebuah file php yang bernama tambah.php. Di dalam file tersebut ada semacam perintah query ke database yang berfungsi untuk meng-input data. Salin script di bawah ini kemudian simpan dengan nama tambah.php.
tambah.php
<!DOCTYPE html> <html> <head> <title>Simple CRUD</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 Mahasiswa</h3> <form action="tambah-proses.php" method="post"> <table cellpadding="3" cellspacing="0"> <tr> <td>NIM</td> <td>:</td> <td><input type="text" name="nim" required></td> </tr> <tr> <td>Nama</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="A">A</option> <option value="B">B</option> <option value="C">C</option> <option value="D">D</option> <option value="E">E</option> </select> </td> </tr> <tr> <td>Jurusan</td> <td>:</td> <td> <select name="jurusan" required> <option value="">Pilih Jurusan</option> <option value="Teknik Informatika">Teknik Informatika</option> <option value="Manajemen Informatika">Manajemen Informatika</option> </select> </td> </tr> <tr> <td> </td> <td></td> <td><input type="submit" name="tambah" value="Tambah"></td> </tr> </table> </form> </body> </html>
Berikut tampilan dari file tambah.php :
Pada gambar di atas terlihat tampilannya memang terlihat sangat sederhana yang terdiri dari beberapa input teks, select, dan satu buah tombol. Jika tombol Tambah tersebut kita klik, maka akan menjalankan file tambah-proses.php yang berisi query ke database.
Untuk itu silakan buat file tambah-proses.php dari script di bawah ini, kemudian simpan dengan nama tambah-proses.php.
tambah-proses.php
<?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 $nim = $_POST['nim']; //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 mhs VALUES(NULL, '$nim', '$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>'; } ?>Setelah selesai, silakan anda uji coba dengan memasukkan beberapa data ke dalam database melalui form tambah.php. Berikut tampilannya setelah dimasukkan beberapa data ke dalam tabel.
5. Update Data (Update/Edit)
Setelah berhasil meng-inputkan data ke dalam database, selanjutnya kita akan mencoba mengedit (update) data yang ada di dalam database tersebut dengan query UPDATE. Untuk itu kita akan membuat sebuah file PHP yang bernama edit.php. Dimana file edit.php tersebut akan diakses melalui halaman index.php yang pada bagian kolom opsi terdapat link edit dan hapus.
Dimana untuk link edit yang di klik anda akan mendapatkan link seperti <a href=”edit.php?id=2″>Edit</a> dimana id ini adalah nilai dari id mahasiswa pada database. Jika id tersebut adalah 2, maka akan menampilkan data mahasiswa yang memiliki id=2.
Untuk itu langsung saja disalin script di bawah ini, kemudian simpan dengan nama edit.php
edit.php
<!DOCTYPE html> <html> <head> <title>Simple CRUD by Masterkode.blogspot.com</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>
Berikut adalah tampilan dari file edit.php :
Nah, jika tombol simpan diklik, maka akan menjalankan file edit-proses.php, file ini berfungsi untuk melakukan proses update data ke dalam database . Untuk itu, langsung saja kita buat file edit-proses.php dengan script di bawah ini.
edit-proses.php
<?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 $nim = $_POST['nim']; //membuat variabel $nim dan datanya dari inputan NIM $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 mhs SET nim='$nim', nama='$nama', kelas='$kelas', jurusan='$jurusan' WHERE 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>'; } ?>
6. Hapus Data (Delete/Hapus)
Langkah terakhir adalah melakukan perintah Delete untuk menghapus data dari database. File yang akan kita buat adalah hapus.php.
Silakan salin script berikut ini kemudian simpan dengan nama hapus.php :
hapus.php
<?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 id FROM mhs WHERE 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 mhs WHERE id='$id'"); //jika query DELETE berhasil if($del){ echo 'Data mahasiswa 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>'; } ?>
Dari script hapus.php di atas dijelaskan bahwa jika kita mengklik link hapus pada index.php, maka kita akan mendapatkan link seperti hapus.php?id=2. Ini artinya script di atas mendeteksi dari url tersebut berapa id nya, jika id=2, maka script akan menghapus data mahasiswa yang memiliki id=2.
Itulah langkah-langkah membuat aplikasi CRUD sederhana yang mudah anda pahami. Semoga artikel ini bermanfaat bagi rekan-rekan semua. Selamat mencoba!!
loading...
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\CRUD\edit.php on line 27
ReplyDeleteWarning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\CRUD\edit.php on line 35
gan sory ni programnya ane pake buat tugas,tapi ko error bgni ya,apanya yang kurang ya gan mohon bantuannya ya gan,,thakns sblomnya
Sepertinya itu masalahnya ada pada query ke database MySQL-nya gan. Mungkin query di atas tidak sesuai dengan nama database atau nama tabel di MySQL-nya.
DeleteCoba disesuaikan query dengan tabel yang ada di database yg agan buat.
Semoga membantu :)