Monday, November 30, 2015

Membuat CRUD dengan PHP Mysqli

CRUD(Create, Read, Update, Delete) Yaitu suatu proses bagian dalam pemrograman yang inti nya digunakan untuk membangun suatu aplikasi atau program, pada kesempatan kali ini saya akan menjelaskan bagaimana langkah demi langkah membuat kasus CRUD sederhana dengan PHP Mysqli Prosedural. Sebenernya Mysqli ini sama dengan hal Mysql, namun karena Mysql sudah berstatus deprecated pada versi PHP 5.3 keatas jadi sudah banyak yang beralih ke mysqli. Bila anda bertanya apa sebenernya apa perbedaan dari mysql dan mysqli, saya sudah menulisnya dan bisa dilihat Disini. Oke tanpa berlama-lama lagi langsung menuju TKP!..

Pertama-tama buat terlebih dahulu script koneksi  ke database dengan nama file nya connect.php  ,berikut script nya.
<?php
$host = "localhost";
$user = "root";
$pass = "";
$db   = "latihan";
$koneksi = mysqli_connect($host, $user, $pass, $db);
if(mysqli_connect_errno()){
echo "Gagal Terhubung ".mysqli_connect_error();
}
 ?>

Selanjutnya buat script untuk menampilkan data dari database nama file nya index.php isi nya sebagai berikut.
<!DOCTYPE html>
<html>
<head>
<title>CRUD</title>
<link rel="stylesheet" href="header.css">
</head>
<body>
<a href="index.php" class="menu">BERANDA</a> ||
<a href="add.php" class="menu">TAMBAH DATA</a>
<br>
<br>
<form action="" method="POST">
<table border="1" cellspacing="0" cellpadding="4">
<tr style="text-align:center;background-color:#1abc9c">
<td>NIK</td>
<td>Nama</td>
<td>No Telp</td>
<td>Alamat</td>
<td>Status</td>
<td>Aksi</td>
</tr>
<?php
          include "connect.php";
$query = mysqli_query($koneksi, "SELECT * FROM karyawan") or die (mysqli_error());
if(mysqli_num_rows($query) == 0){
echo "<b>Tidak ada data yang tersedia</b>";
}else{
while($r = mysqli_fetch_array($query)): ?>

<tr style="text-align:center">
<td><?php echo $r['nik'] ?></td>
<td><?php echo $r['nama'] ?></td>
<td><?php echo $r['no_telp'] ?></td>
<td><?php echo $r['alamat'] ?></td>
<td><?php echo $r['status'] ?></td>
<td>
<a href="edit.php?id=<?php echo $r['id'] ?>">Edit</a> ||
<a href="delete.php?id=<?php echo $r['id'] ?>" onClick='return confirm("Apakah Ada yakin menghapus?")'>Hapus</a>
</td>
</tr>
<?php
endwhile;
}
?>
</table>
</form>
</body>
</html>
Tampilan dari file index.php, tidak ada data karena didatabase tidak ada data nya.


Sedikit penjelasan mengenai script index.php diatas, pertama-tama buat dulu sebuah query untuk memilih semua data dari tabel karyawan. Lalu cek apakah datanya ada, kalau tidak maka print sebuah statment bahwa tidak ada data yang tersedia. Lalu jika datanya tidak kosong atau ada maka keluarkan datanya.


Selanjutnya untuk menambah data baru buat sebuah file lagi dengan nama add.php
<!DOCTYPE html>
<html>
<head>
<title>TAMBAH DATA</title>
<link rel="stylesheet" href="header.css">
</head>
<body> <a href="index.php" class="menu">BERANDA</a> ||
<a href="add.php" class="menu">TAMBAH DATA</a>
<h2>FORM TAMBAH DATA</h2>
<form action="" method="POST">
<table>
<tr>
<td>NIK </td>
<td><input type="text" name="nik"  placeholder="Masukkan NIK" /></td>
</tr>
<tr>
<td>Nama </td>
<td><input type="text" name="nama"  placeholder="Masukkan Nama" /></td>
</tr>
<tr>
<td>No Telp</td>
<td> <input type="text" name="no_telp" placeholder="Masukkan No Telp"></td>
</tr> <tr>
<td>Alamat</td>
<td><input type="text" name="alamat" placeholder="Masukkan Alamat"></td>
</tr>
 <tr>
<td>Status</td>
<td>
<select name="status">
 <option value="Aktif">Aktif</option>
  <option value="Tidak Aktif">Tidak Aktif</option>
</select>
</td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="tambah" value="Tambah">
<button type="reset" value="Reset">Reset</button>
</td>
</tr>
</table>
</form>

Berikut tampilan dari script diatas untuk membuat form.

Lalu sisipkan script php berikut, untuk memproses data yang akan ditambahkan.
<?php if(isset($_POST['tambah'])){
$nik     = $_POST['nik'];
$nama    = $_POST['nama'];
$no_telp = $_POST['no_telp'];
$alamat  = $_POST['alamat'];
$status  = $_POST['status'];
$querytambah = mysqli_query($koneksi, "INSERT INTO karyawan VALUES(NULL, '$nik', '$nama', '$no_telp', '$alamat', '$status')") or die(mysqli_error());
if($querytambah) {
header('location: index.php');
} else{
echo "Upss Something wrong..";
}
}
?>
</body>
</html>

Berikut tampilan ketika form ditambakan.


Sedikit penjelasan lagi mengenai script add.php diatas, pertama-tama buat terlebih dahulu form HTML untuk menampung inputan. lalu buat variabel dari tiap field di database, selanjutnya buat query untuk memasukkan data ke dalam database dengan insert into bila querynya berhasil maka akan meredirect ke halaman index.php atau beranda.

Sekian dulu pembahasan mengenai CRUD ini, untuk pembahasan selanjutnya mengenai artikel CRUD dengan Mysqli ini saya lanjutkan di bagian kedua. Silahkan dicoba dan semoga bermanfaat.