CRUD PHP
1. Pendahuluan
CRUD adalah singkatan dari ( Create, Read, Update, Delete). Operasi CRUD adalah operasi
yang dilakukan untuk memanipulasi data pada sebuah database.
Pada materi kita kali ini kita akan membuat fasilitas CRUD dengan menggunakan Bahasa
pemrograman PHP untuk menjalankan semua operasi CRUD pada database mysql.
Kode Lengkap :
<?php
$host="localhost";
$user="root";
$pass="";
$database="dbpenjualan";
$koneksi=new mysqli($host,$user,$pass,$database);
if (mysqli_connect_errno()) {
trigger_error('Koneksi ke database gagal: ' .
mysqli_connect_error(), E_USER_ERROR);
}
?>
Keterangan :
$host : adalah variable untuk setting host. biasanya secara default kita isi
dengan localhost
$user: bisa diisi dengan user yang memiliki akses ke database. Misalnya
disini secara default bisa kita isi root
$pass: bisa diisi dengan password user database secara default bisanya
bisa kita kosongkan saja passwordnya
$database : bisa kita isi dengan nama database yang akan kita gunakan
mysqli : adalah class yang kita gunakan untuk terhubung ke database
mysql yang kita atur diawal mulai dari, host,user,password dan nama
databasenya
2.3. Buat Halaman Tampil Data
Pada halman ini kita akan menampilkan data barang dari tabel t_barang yang
sudah kita buat sebelumnya , agar datanya terlihat pada halaman index.php anda
bisa isi dulu pada tabel tersebut beberapa record data melalui tools
phpmyadmin.
Tampilan :
Kode Lengkap :
<html>
<head>
<title> Tampil Data Barang</title>
</head>
<body>
<h2 align="center">DATA BARANG</h2>
<a href="input.php">Tambah Data Barang</a>
<table align="center" border="1px" cellpading="0px"
cellspacing="0px" width="800px">
<tr>
<th>No</th>
<th>Kode Barang</th>
<th>Nama barang</th>
<th>Satuan</th>
<th>Harga Be li</th>
<th>Harga Jual</th>
<th>Diskon</th>
<th>Stok</th>
<th>Aksi</th>
</tr>
<?php
include"koneksi.php";
$i=0;
$tampil=mysqli_query($koneksi,"SELECT * FROM t_barang");
while($data=mysqli_fetch_array($tampil)){
$i++;
echo"<tr>
<td>$i</td>
<td>$data[kode_barang]</td>
<td>$data[nama_barang]</td>
<td>$data[satuan]</td>
<td>$data[harga_beli]</td>
<td>$data[harga_jual]</td>
<td>$data[diskon]</td>
<td>$data[stok]</td>
<td>
<a
href='edit.php?kode_barang=$data[kode_barang]' >Edit</a>
<a
href='delete.php?kode_barang=$data[kode_barang]' >Delete</a>
</td>
</tr>";
?>
</table>
</body>
</html>
Keterangan :
Pada kode diatas kita menjalankan query untuk menampilkan record data (*)
keseluruhan kolom pada tabel barang.
mysqli_fetch_array : adalah fungsi yang digunakan untuk mengubah baris
.data yang dipilih menjadi pecahan array.
Dalam kasus ini kita menampilkan data hasil eksekusi query sebelumnya
dengan memecah record menjadi pecahan array kemudian ditampilkan
dengan pengulangan while selanjutnya dicetak dengan echo dalam format
record tabel.
Tampilan :
Kode Lengkap :
<?php
include"koneksi.php";
if(isset($_POST['simpan']))
{
$simpan=mysqli_query($koneksi,"INSERT INTO t_barang
(kode_barang,nama_barang,satuan,harga_beli,harga_jual,diskon) VALUES
('$_POST[kode_barang]','$_POST[nama_barang]','$_POST[satuan]','$_POST[harga
_beli]','$_POST[harga_jual]','$_POST[diskon]')");
if($simpan){
header("location:index.php");
}else{
echo"Gagal Simpan";
}
}
?>
<html>
<head>
<title>Form Input Barang</title>
</head>
<body>
<h2 align="center">Form Input Barang</h2>
<form method="POST" action="input.php" >
<table align="center" width="500px">
<tr>
<td>Kode Barang</td>
<td>:
<input type="text" name="kode_barang" required/>
</td>
</tr>
<tr>
<td>Nama Barang</td>
<td>:
<input type="text" name="nama_barang" required/>
</td>
</tr>
<tr>
<td>Satuan</td>
<td>:
<input type="text" name="satuan" required/>
</td>
</tr>
<tr>
<td>Harga Beli</td>
<td>:
<input type="number" name="harga_beli" required/>
</td>
</tr>
<tr>
<td>Harga Jual</td>
<td>:
<input type="number" name="harga_jual" required/>
</td>
</tr>
<tr>
<td>Diskon</td>
<td>:
<input type="number" name="diskon" required/>
</td>
</tr>
<tr>
<td><a href="index.php">Kembali</a></td>
<td>:
<input type="reset" name="reset" value="Reset"/>
<input type="submit" name="simpan" value="Simpan"/>
</td>
</tr>
</table>
</form>
</body>
</html>
Keterangan :
- Apabila tombol simpan di klik maka halman akan mengarah ke halaman edit itu
sendiri dan menjalankan perintah query simpan :
- Apabila query berhasil dijalankan maka akan diarahkan ke halaman index.php
- Sebalikya apabila query gagal dijalankan maka akan muncul pesan ‘Gagal Simpan’
- Apabila kode barang yang diinput sudah ada sebelumnya maka data yang
diinputkan tidak dapat tersimpan dikarenakan kolom kode barang pada tabel
bersifat primary key.
2.5. Buat Halaman Edit Data
Tampilan :
Kode lengkap :
<?php
include"koneksi.php";
if(isset($_POST['update']))
{
$update=mysqli_query($koneksi,"UPDATE t_barang SET
kode_barang='$_POST[kode_barang]',
nama_barang='$_POST[nama_barang]',
satuan='$_POST[satuan]',
harga_beli='$_POST[harga_beli]',
harga_jual='$_POST[harga_jual]',
diskon='$_POST[diskon]' WHERE kode_barang='$_POST[kode_barang_tmp]' ");
if($update){
header("location:index.php");
}else{
echo"Gagal Memperbaharui";
}
}
Keterangan :
- Pada halaman index.php kita mengklik sebuah link dengan label ‘Edit ‘ yang
didalamnya terdapat pengalamatan
(href=edit.php?kode_barang=$data[kode_barang]’) dimana alamat tersebut
mengarah ke halaman edit.php dengan membawa parameter data
‘kode_barang’
- Pada halaman edit.php parameter ‘kode_barang’ diparsing datanya untuk
dijadikan kondisi mencari data yang memiliki kode barang sesuai parameter yang
dikirim berupa WHERE kode_barang=’$_GET[kode_barang]’. Selanjutnya data
yang terpilih ditampilkan pada input form yang sudah disediakan dengan
- Pada saat user mengklik tombol ‘Update’ maka akan mengarah ke halaman
edit.php kemudian menjalankan perintah query ‘update’
<?php
include"koneksi.php";
$delete=mysqli_query($koneksi,"DELETE FROM t_barang WHERE
kode_barang='$_GET[kode_barang]'");
if($delete){
header("location:index.php");
}else{
echo"Gagal Menghapus";
}
?>
Keterangan :
- Pada halaman index.php kita mengklik sebuah link dengan label ‘Delete ‘ yang
didalamnya terdapat pengalamatan
(href=’delete.php?kode_barang=$data[kode_barang]’) dimana alamat tersebut
mengarah ke halaman delete.php dengan membawa parameter data
‘kode_barang’
- Pada halaman delete.php parameter ‘kode_barang’ diparsing datanya untuk
dijadikan kondisi penghapusan berupa WHERE
kode_barang=’$_GET[kode_barang]’
- Apabila query berhasil dijalankan maka akan diarahkan ke halaman index.php
- Sebalikya apabila query gagal dijalankan maka akan muncul pesan ‘Gagal
Menghapus’