Tutorial kali ini saya akan menjelaskan cara membuat aplikasi sederhana CRUD (Create, Read, Update, Delete) dengan menggunakan PHP dan MySQL. Dalam membuat aplikasi yang berbasis web, hal yang paling penting dan paling utama untuk diketahui adalah membuat aplikasi CRUD. Sebelumnya di artikel tentang Perbedaan POST dan GET di PHP, saya sudah pernah mengatakan bahwa implementasi method POST dan GET biasanya lebih banyak akan ditemukan dalam proses CRUD ini. Silahkan perhatikan nanti setiap intruksi-intruksi dalam tutorial ini, supaya anda tahu pada saat bagaimana harus menggunakan method POST dan pada saat bagaimana harus menggunakan GET.
Di tutorial kali ini saya skenariokan kita akan membuat aplikasi pengolahan data barang. Dimana dalam pengolahan data barang ini akan terdapat proses CRUD (Create, Read, Update, Delete) atau SIUD (Select, Insert, Update, Delete).
Pertama persiapkan dulu tabel barang untuk menyimpan data barang
CREATE TABLE barang (
id_barang int(11) NOT NULL AUTO_INCREMENT,
nama_barang varchar(30),
satuan_barang varchar(10),
harga_barang decimal(10,0),
stock_barang int(10),
PRIMARY KEY(id_barang)
)
INSERT INTO barang (nama_barang, satuan_barang, harga_barang, stock_barang) VALUES ('LAPTO TOSHIBA L635', 'PCS', 5000000, 10)
Buat script koneksi ke database
koneksi.php
<?php
$hostdb ="localhost";
$usernamedb ="root";
$passworddb ="";
$database ="tutorial";
$koneksi = mysql_connect($hostdb, $usernamedb, $passworddb) or die("Kesalahan Koneksi");
mysql_select_db($database, $koneksi) or die ("Databasenya Error");
?>
Silahkan diganti value $hostdb, $usernamedb, $passworddb, $database sesuaikan dengan database anda.
Buat form untuk menampilkan data barang
data-barang.php
<html>
<head><title>DAFTAR BARANG</title></head>
<body>
<h2>DAFTAR BARANG</h2><br />
<form action="tambah-barang.php">
<input type="submit" value="TAMBAH BARANG">
</form>
<?php
//inkludkan koneksi database
include("koneksi.php");
//Buat perintah untuk melihat data barang
$lihat_barang = mysql_query("SELECT * from barang");
//Script melihat jumlah barang keseluruhan
$total_barang = mysql_num_rows($lihat_barang);
?>
<table border="1" cellspacing="1" cellpadding="1">
<tr>
<td>Id Barang</td>
<td>Nama Barang</td>
<td>Satuan Barang</td>
<td>Harga Barang</td>
<td>Stock Barang</td>
<td>Proses</td>
</tr>
<!-- Menampilkan semua barang dengan menggunakan perulangan while -->
<?php while($data=mysql_fetch_array($lihat_barang)){ ?>
<tr>
<td><?php echo $data["id_barang"];?></td>
<td><?php echo $data["nama_barang"];?></td>
<td><?php echo $data["satuan_barang"];?></td>
<td><?php echo $data["harga_barang"];?></td>
<td><?php echo $data["stock_barang"];?></td>
<td><a href="ubah-barang.php?idbarang=<?php echo $data['id_barang'];?>">Update</a> | <a href="hapus-barang.php?idbarang=<?php echo $data['id_barang'];?>">Delete</a></td>
</tr>
<?php } ?>
</table>
<p>Jumlah Barang: <?php echo $total_barang; ?></p>
</body>
</html>
Dan berikut tampilan dari daftar barang
![]() |
| Tampilan Daftar Barang |
Selanjutnya buat form untuk tambah barang
tambah-barang.php
<html>
<head><title>TAMBAH BARANG</title></head>
<body>
<h2>TAMBAH BARANG</h2>
<fieldset style="width: 20%;">
<legend>Form Input Barang</legend>
<form action="act-tambah-barang.php" method="POST">
<p>
Nama Barang<br />
<input type="text" name="nama_barang" required>
</p>
<p>
Satuan Barang<br />
<input type="text" name="satuan_barang" required>
</p>
<p>
Harga Barang<br />
<input type="text" name="harga_barang" required>
</p>
<p>
Stock Barang<br />
<input type="text" name="stock_barang" required>
</p>
<p>
<input type="submit" value="Simpan" />
<input type="reset" value="Reset" onclick="return confirm('hapus data yang telah diinput?')">
</p>
</form>
</fieldset>
</body>
</html>
![]() |
| Form Tambah Barang |
Tapi form tambah barang di atas belum bisa untuk menyimpan data, maka dari itu perlu dibuatkan script untuk menyimpan data.
act-tambah-barang.php<?php
//inkludkan koneksi database
include("koneksi.php");
if(isset($_POST['submit']))
{
//Ambil Data yang dikirim dengan method POST
$nama_barang = $_POST['nama_barang'];
$satuan_barang = $_POST['satuan_barang'];
$harga_barang = $_POST['harga_barang'];
$stock_barang = $_POST['stock_barang'];
//Buat query untuk insert data ke tabel
$tambah_barang=mysql_query("INSERT INTO barang (nama_barang, satuan_barang, harga_barang, stock_barang) VALUES ('$nama_barang', '$satuan_barang', '$harga_barang', '$stock_barang')");
//Redirect ke Daftar Barang Jika Berhasil, jika tidak tampilkan pesan
if($tambah_barang)
echo '<script type="text/javascript">window.location="data-barang.php"</script>';
else
echo "Gagal Menyimpan Barang";
}
else
{
echo '<script type="text/javascript">window.location="tambah-barang.php"</script>';
}
?>
Barikutnya buat script untuk menampilkan data barang yang akan diubah berdasarkan id, kemudian buatkan form untuk mengubah data barang
ubah-barang.php<?php
//inkludkan koneksi ke database
if(isset($_GET['idbarang']))
{
include("koneksi.php");
//Ambil ID dari barang yang akan diedit dengan method GET
$id_barang = $_GET["idbarang"];
//Buat query untuk mengambil data
$ambildata = mysql_query("SELECT * FROM barang WHERE id_barang='$id_barang'");
$data = mysql_fetch_array($ambildata);
?>
<html>
<head><title>UBAH BARANG</title></head>
<body>
<h2>UBAH BARANG</h2>
<fieldset style="width: 20%;">
<legend>Form Ubah Barang</legend>
<form action="act-ubah-barang.php" method="POST">
<input type="hidden" name="id_barang" value="<?php echo $id_barang?>">
<p>
Nama Barang<br />
<input type="text" name="nama_barang" value="<?php echo $data['nama_barang'];?>" required>
</p>
<p>
Satuan Barang<br />
<input type="text" name="satuan_barang" value="<?php echo $data['satuan_barang'];?>" required>
</p>
<p>
Harga Barang<br />
<input type="text" name="harga_barang" value="<?php echo $data['harga_barang'];?>" required>
</p>
<p>
Stock Barang<br />
<input type="text" name="stock_barang" value="<?php echo $data['stock_barang'];?>" required>
</p>
<p>
<input type="submit" name="submit" value="Simpan">
<input type="reset" value="Reset" onclick="return confirm('hapus data yang telah diinput?')">
</p>
</form>
</fieldset>
</body>
</html>
<?php
}
else
{
echo '<script type="text/javascript">window.location="data-barang.php"</script>';
}
?>
Berikut tampilan ketika salah satu data barang di klik pada daftar barang![]() |
| Tampilan Ubah Data Barang |
Coba perhatikan gambar di atas, ada tanda merah melingkar. Itu artinya, dalam mengambil data dari barang yang akan diedit di form ubah barang, saya menggunakan method GET dengan parameter id barang itu sendiri. Kenapa menggunakan parameter id barang? Karena sesuai dengan pembuatan table tadi, kita menset id barang sebagai primary key (unik).
Tetapi button simpan yang ada di form ubah barang belum berfungsi, maka dari itu sekarang buatkan script untuk mengolah data barang yang diubah
act-ubah-barang.php<?php
//inkludkan koneksi database
include("koneksi.php");
if(isset($_POST['submit']))
{
//Ambil Data yang dikirim dengan method POST
$id_barang = $_POST['id_barang'];
$nama_barang = $_POST['nama_barang'];
$satuan_barang = $_POST['satuan_barang'];
$harga_barang = $_POST['harga_barang'];
$stock_barang = $_POST['stock_barang'];
//Buat query untuk ubah data ke tabel
$ubah_barang=mysql_query("UPDATE barang set nama_barang='$nama_barang', satuan_barang='$satuan_barang', harga_barang='$harga_barang', stock_barang='$stock_barang' WHERE id_barang='$id_barang'");
//Redirect ke Daftar Barang Jika Berhasil, jika tidak tampilkan pesan
if($ubah_barang)
echo '<script type="text/javascript">window.location="data-barang.php"</script>';
else
echo "Gagal Menyimpan Barang";
}
else
{
echo '<script type="text/javascript">window.location="tambah-barang.php"</script>';
}
?>
Selanjutnya yang terkahir kita buat script untuk menghapus data barang yang kita inginkan
hapus-barang.php<?php
//inkludkan koneksi ke database
if(isset($_GET['idbarang']))
{
include("koneksi.php");
//Ambil ID dari barang yang akan diedit dengan method GET
$id_barang = $_GET["idbarang"];
//Buat query untuk mengambil data
$hapus = mysql_query("DELETE FROM barang WHERE id_barang='$id_barang'");
//Redirect ke Daftar Barang Jika Berhasil, jika tidak tampilkan pesan
if($hapus)
echo '<script type="text/javascript">window.location="data-barang.php"</script>';
else
echo "Gagal Menghapus Barang";
}
else
{
echo '<script type="text/javascript">window.location="data-barang.php"</script>';
}
?>
Jadi kira-kira seperti itulah aplikasi CRUD sederhana dengan skenario data barang. Tetapi menurut saya aplikasi CRUD ini jika diaplikasikan ke dalam sistem yang besar belum cukup sempur, karena bisa di akses oleh siapa saja diluar admin. Maka dari itu perlu membuat autentikasi di PHP untuk menghindari hal tersebut. Bagaimana, Sudah paham? Silahkan tuangkan dalam komentar jika ada yang ditanyakan :D




maaf gan, bisa diupload / dkirim via email file nya dlam bntuk ms.word :D ?
ReplyDeleteterima kasih sbelumnya
email : rafend1717@gmail.com
Parse error: syntax error, unexpected 'Â Â Â Â Â Â include' (T_STRING) in C:\xampp\htdocs\barang\data-barang.php on line 13
ReplyDeletekenapa ya error
Bisa agan copy script yang agan buat? Silahkan dipaste di pastebin.com, kirimkan link pastenya disini...
Deletemau tanya?
ReplyDeleteSilahkan.. agan bisa langsung tanyakan di kolom komentar ini.. Saya akan jawab semampu saya :D
Delete