Tuesday, 8 November 2016

CARA MEMBUAT CRUD DENGAN PHP DAN MY SQL UNTUK PEMULA










Sesuai dengan judul dari artike ini yaitu "CARA MEMBUAT CRUD DENGAN PHP DAN MYSQL UNTUK PEMULA", CRUD adalah singkatan dari Create data, Read Data, Update, Delete.

Banyak yang bilang kalo belajar bahasa pemrograman itu sangan susah, tapi sebenarnya asik.. semua tergantung dari diri kita sobat bagi ilmu.. jika kita ada niat dan bersungguh sungguh pasti akan mudah untuk memahaminya..

bahkan temen mimin sendiri ada yang ngomong stress mikirin bahasa pemrograman, sampai sampai males buat mempelajarinya, tapi kalo mimin sih semangaat hehehehe, karna saya punya tekat, sebelum saya keluar dari sekolah ini saya harus punya website pribadi yang dibuat dari hasil keringat saya sendiri....

kali ini saya akan membuat CRUD sederhana dengan php dan mysql.
Crud berarti kita akan membuat coding untuk membuat data (Create membaca data (Read) mengupdate data (Update) dan menghapus data (Delete).

saya harap artikel ini dapat membantu teman teman untuk memulai membuat website dengan CRUD. dan membantu teman teman untuk menyelesaikan websitenya.

Baiklah langsung saja.

LANGKAH 1 : MEMBUAT DATABASE.

langkah pertama yang harus kita lakukan adalah, Membuat Database. Buatlah database di phpMyAdmin, Saya umpamakan database yang kita buat adalah bernama "ujicoba".
setelah itu saya akan membuat table nya. saya sudah siapkan table nya untuk teman teman, silahkan gunakan code dibawah ini untuk membuat table nya.

CREATE TABLE `member` (
`member_id` int(11) NOT NULL auto_increment,
`member_nama` varchar(50) NOT NULL,
`member_email` varchar(50) NOT NULL,
`member_hp` varchar(30) NOT NULL,
PRIMARY KEY (`member_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ;

Jika sudah, berarti kita sekarang sudah memiliki 1 tabel bernama member.
LANGKAH 2 : MEMBUAT CONFIG KONEKSI KE DATEBASE

Buat lah file bernama config.php untuk di isi dengan code yang akan membuat koneksi dengan database. silahkan tuliskan code dibawah ini pada file config.php

<?php
$host = "localhost";//ip host
$user = "root"; //user database
$pass = "root"; // password database
$name = "ujicoba"; //nama database

$koneksi = mysql_connect($host, $user, $pass) or die("Koneksi ke database gagal!");
mysql_select_db($name, $koneksi) or die("Tidak ada database yang dipilih!");
?>

silahkan ganti username dan password database nya jika teman-teman sudah membuat user database nya.

LANGKAH 3 : INPUT DATA (CREATE)

Nah,.. karna kita membuat crud, huruf pertama nya adalah C, yaitu Create. ayo kita buat from input datanya.

buat lah file bernama tambah.php dan tuliskan script dibawah ini.

<!DOCTYPE html>
<html>
<head>
<title>HARYUDIPITU</title>
</head>
<body>
<h2>CRUD SEDERHANA</h2>
<p><a href="index.php">Beranda</a> / <a href="tambah.php">Tambah Data</a></p>
<h3>BUAT DATA MEMBER</h3>
<form action="tambah-proses.php" method="post">
<table cellpadding="3" cellspacing="0">

<tr>
<td>Nama Lengkap</td>
<td>:</td>
<td><input type="text" name="nama" size="30" required></td>
</tr>
<tr>
<td>Email</td>
<td>:</td>
<td><input type="text" name="email" size="30" required></td>
</tr>
<tr>
<td>Nomor HP</td>
<td>:</td>
<td><input type="text" name="telepon" size="30" required></td>
</tr>

<tr>

<td>:</td>
<td><button type="submit"
name="tambah" >Submit</button>
</td>
</tr>
</table>
</form>
</body>
</html>

sekarang kita sudah membuat form nya. untuk memproses data agar data bisa di simpan di database kita butuk pengesekusi nya, buat lah file dengan nama tambah-proses.php dan salin script berikut.

<?php
if(isset($_POST['tambah'])){
//inlcude configurasi koneksi
include('config.php');
//menangkap data dari tambah.php
$nama = $_POST['nama'];
$email = $_POST['email'];
$hp = $_POST['telepon'];

//qwey menympan datanya
$simpan="INSERT INTO member SET
member_nama='$nama',
member_email='$email',
member_hp='$hp'";
$input = mysql_query($simpan); //exekusinya
//mencek sukses atau tidak
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{ 

echo '<script>window.history.back()</script>';

}
?>

nah jika sudah sampai di langkah ini berati anda sudah bisa memasukan data kedalam database

LANGKAH 4 : MEMBACA DATABASE DAN MENAMPILKANNYA (READ)

kita akan membuat halaman untuk membaca data yang sudah kita input tadi. buat lah file index.php dan berikut script nya

<?php
//memanggil config.php
include('config.php');
?>
<!DOCTYPE html>
<html>
<head>
<title>HARYUDIPITU</title>
</head>
<body>
<h2>CRUD HARYUDIPITU</h2>
<p><a href="index.php">Beranda</a> / <a href="tambah.php">Tambah Data</a></p>
<h3>Data MEMBER</h3>
<table cellpadding="5" cellspacing="0" border="1">
<tr bgcolor="#CCCCCC">
<th>No.</th>
<th>NAMA</th>
<th>EMAIL</th>
<th>Nomor Telepon</th>
</tr>
<?php

//SELECT data dari database
$query = mysql_query("SELECT * FROM member ORDER BY member_name DESC") or die(mysql_error());
//melihat apakah ada database
if(mysql_num_rows($query) == 0){ //jika belum ada data
echo '<tr><td colspan="6">Tidak ada data!</td></tr>';
}else{
//jika data tidak kosong
$no = 1; //membuat nomor
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['member_nama'].'</td>'; //menampilkan data nama lengkap dari database
echo '<td>'.$data['member_email'].'</td>'; //menampilkan data email dari database
echo '<td>'.$data['member_hp'].'</td>'; //menampilkan data hp dari database
echo '<td><a href="edit.php?id='.$data['member_id'].'">Edit</a> / <a href="hapus.php?id='.$data['member_id'].'" onclick="return confirm(\'Yakin?\')">Hapus</a></td>'; //menampilkan link edit dan hapus dimana tiap link terdapat GET id -> ?id=member_id
echo '</tr>';
$no++; //menambah jumlah nomor urut setiap row
}
}
?>
</table>
</body>
</html>

simpan dan sekarang sudah bisa melihat data yang sudah kita input.

LANGKAH 5 : MERUBAH DATA / UPDATE DATA

setelah kita bserhasi memasukan data, saatnya kita buat fitur untuk dapat merubah data tersebut.
buatlah file bernama edit.php

<!DOCTYPE html>
<html>
<head>
<title>CRUD HARYUDIPITU</title>
</head>
<body>
<h2>CRUD HARYUDIPITU</h2>
<p><a href="index.php">Beranda</a> / <a href="tambah.php">Tambah Data</a></p>
<h3>Edit Data MEMBER</h3>
<?php
//proses mengambil data ke database untuk ditampilkan di form edit berdasarkan member_id yg didapatkan dari GET id -> edit.php?id=member_id
//include atau memasukkan file koneksi ke database
include('config.php');
//membuat variabel $id yg nilainya adalah dari URL GET id -> edit.php?id=member_id
$id = $_GET['id'];
//melakukan query ke database dg SELECT table member dengan kondisi WHERE member_id = '$id'
$show = mysql_query("SELECT * FROM member WHERE member_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 member_id -->
<table cellpadding="3" cellspacing="0">

<tr>
<td>Nama Lengkap</td>
<td>:</td>
<td><input type="text" name="nama" size="30" value="<?php echo $data['member_nama']; ?>" required></td> <!-- value diambil dari hasil query -->
</tr>
<tr>
<td>EMAIL</td>
<td>:</td>
<td><input type="text" name="email" size="30" value="<?php echo $data['member_email']; ?>" required></td> <!-- value diambil dari hasil query -->
</tr>
<tr>
<td>Telepon</td>
<td>:</td>
<td><input type="text" name="hp" size="30" value="<?php echo $data['member_hp']; ?>" required></td> <!-- value diambil dari hasil query -->
</tr>


<tr>
<td>&nbsp;</td>
<td></td>
<td><input type="submit" name="simpan" value="Simpan"></td>
</tr>
</table>
</form>
</body>
</html>

Nah dengan begitu, saat kita mengklik edit kita dapat mengetahi data yang mana yng akan di edit. sekarang kita buat proses input data baru nya..
buat lah file bernama 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('config.php');
//jika tombol tambah benar di klik maka lanjut prosesnya
$id = $_POST['id']; //membuat variabel $id dan datanya dari inputan hidden id
$nama = $_POST['nama']; //membuat variabel $nama dan datanya dari inputan Nama Lengkap
$hp = $_POST['hp']; //membuat variabel $kelas dan datanya dari inputan dropdown Kelas
$email = $_POST['email']; //membuat variabel $jurusan dan datanya dari inputan dropdown Jurusan
//melakukan query dengan perintah UPDATE untuk update data ke database dengan kondisi WHERE member_id='$id' <- diambil dari inputan hidden id
$update = mysql_query("UPDATE member SET member_nama='$nama', member_email='$email', member_hp='$hp' WHERE member_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>';

}
?>

berarti sekarang fitur edit sudah berfungsi dengan baik sekarang.

LANGKAH 6 : MENGHAPUS DATA (DELETE)

ini adalah akhir dari CRUD, yaitu delete.langsung saja, buat lah file bernama delete.php dan berikut adalah script delete.php
<?php
//memulai proses hapus data

//cek dahulu, apakah benar URL sudah ada GET id -> hapus.php?id=member_id
if(isset($_GET['id'])){
//inlcude atau memasukkan file koneksi ke database
include('config.php');
//membuat variabel $id yg bernilai dari URL GET id -> hapus.php?id=member_id
$id = $_GET['id'];
//cek ke database apakah ada data member dengan member_id='$id'
$cek = mysql_query("SELECT member_id FROM member WHERE member_id='$id'") or die(mysql_error());
//jika data member 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 member dengan kondisi WHERE member_id='$id'
$del = mysql_query("DELETE FROM member WHERE member_id='$id'");
//jika query DELETE berhasil
if($del){
echo 'Data member 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>';
}
?>

Nah dengan begini anda sudah memiliki fitur lengkap CRUD.
bagaimana? mudah bukan membuat CRUD.  selamat mencoba sobat...
ku yakin kalian pasti bisa..