Anda di halaman 1dari 20

MATERI

PHP 2 : CRUD Database mysql


bagaiman memanipulasi database mysql menggunakan bahasa pemrograman web PHP
KATEGORI
Research team : Web Programing > PHP (Pemula)
OLEH
Yusu !khsan H" # $yussan%id
Yogyakarta &' (uni &)*+
,ahasa -ndonesia
TENTANG
Pembahasan kali ini kita akan lebih serius. bagaimana untuk insert data ke database
mysql menggunakan bahasa PHP. edit data yang diinsert tadi. dan menghapusnya"
Pela/aran pada materi kali ini adalah sebagai berikut :
QUER DA!AR CRUD
METODE PENGIRIMAN DATA
!ELECT DATA
IN!ERT DATA
UPDATE DATA
DELETE DATA
QUER DA!AR CRUD
Merupakan bagian yang penting karena disinilah inti dari operasi CRUD pada sebuah web,
PHP sebagai bahasa pemrograman fungsinya adalah untuk memanajemen data apa yang
akan dikirim, dan query adalah perintah untuk melakukan CRUD pada data tadi ! yang
menjadi bahasa utama create, read, update, delete.
CREATE
,agaimana kita bisa mengisi data pada tabel yang sudah disiapkan oleh database" 0uery
dasar yang akan kita gunakan adalah -123R4 -145 6tabel7(kolom) 8!9:32 (6data7)"
2ebelumnya pada materi PHP * . telah kita buat satu buah tabel anggota dengan
struktur sebagai berikut"
:ntuk testing. inputkan satu buah data anggota baru menggunakan query mysql" :ntuk
eksekusi query bisa menggunakan asilitas dari PHP myadmin. di tab ;sql;. setelah
memilih database"
INSERT INTO anggota(nama_anggota,umur) VALUES('Pailus', 23)
<aka hasil dari eksekusi query tersebut. berhasil memasukan databaru ke tabel anggota.
untuk id%anggotanya dikosongkan. karena sebelumnya telah kita setting auto in"rement
yang artinya otomatis mengisi dengan angka setelahnya pada id%anggota"
READ
<enampilkan data sesuai dengan ketentuan tertentu. misal menampilkan satu data
denan id sekian. menampilkan = data terbaru. menamplkan *) terbaru berikutnya dan
masih banyak lagi. untuk semua itu mysql menyediakan query #$%$C& yang digunakan
untuk membaca data"
Memba"a !el#$#h Is% Tabel
SELECT * FROM anggota
Menam&%l'an (ata (en)an %(*an))+ta te$tent#
SELECT * FROM anggota WHERE id_anggota = 1
EDIT
<engubah data sesuai dengan apa yang diinginkan . dalam mysql edit menggunakan
query UPD'&$ . untuk mengubah seluruh isi dari seluruh tabel cukup menggunakan
perintah UPD'&$ untuk mengubah satu tabel. bisa menggunakan tambahan (H$R$
Men)#bah (ata
Update data yussan yang sebelumnya berumur )* tahun menjadi )+ tahun, untuk fokus
melakukan perbahan pada satu data, data tersebut harus mempunyai primary key sebagai
identitas utamanya, dalam kasus ini primary keynya adalah id,anggota, dan id,anggota
yussan adalah +
UPDATE anggota SET umur = '21' WHERE id_anggota =1
Delete Data
2angat riskan untuk menggunakan query ini. karena /ika lupa menggunakan statement
where maka seluruh data yang ada didatabase akan hilang" :ntuk itu perhatikan dengan
betul query yang akan anda /alankan sebelum mengeksekusinya"
>elete data anggota pailus
DELETE FROM anggota WHERE id_anggota = 5
METODE PENGIRIMAN DATA
-ang dijelaskan disini adalah bagaimana "ara kita untuk mengirimkan data ke proses
lainnya untuk kemudian diproses lebih lanjut, ada ) metode yang paling sering digunakan
yaitu ./$&0 dan .P1#&0 Masing2masing metode mempunyai perbedaan yang membuatnya
digunakan untuk keperluan yang berbeda2beda pula
GET METHOD
<enggunakan get method memungkinkan user bisa membaca data yang dikirimkan
melalui address bar" :ntuk gambarannya seperti ini lah get method,
http344alamatweb"om56ariabel7data
>ari contoh diatas. bisa kita lihat setelah alamat web ditemukan tanda ?@A yang
mengartikan dimulainya penggunaan get method. untuk tulisan yang berada dibelakang
?BA adalah Cariabel dari get method dan tulisan setelah ?BA adalah data yang dikirmkan.
/adi :R9 diatas mengartikan. kita mengirim data ;data; dengan Cariabel ;Cariabel; ke
halaman alamatweb"com menggunakan get method Detika mengirim & buat data pada
satu get method, maka penulisannya akan men/adi seperti ini"
http344alamatweb"om56ariabel+7data+86ariabel)7data)
POST METHOD
Pen/elasan tentang post method sama dengan get method, hanya sa/a pada post method.
kita tidak mengetahui data apa yang dikirimkan. karena data yang dikirimkan tidak
ditampilkan di url bar
9tips:ketika dalam keperluan testing untuk menge"ek apakan data yang dikirimkan dengan
post method sudah sesuai dengan yang dinginkan, bisa menggunakan bantuan browser,
dalam hal ini penuis menggunakan google "hrome Caranya 3 jalan method get yang sudah
disiapkan, "ek data yang dikirim dengan ;klik kanan pada halaman web inspe"t element
2<network2<"ari method P1#&4/$& dan klik untuk memba"anya:
!ELECT DATA
2ebelumnya sudah dibuat database anggota yang berisi data anggota meliputi :
id%anggota. nama%angggota. umur" Dini kita akan menampilkan tersebut dalam ormat
tabel sehingga lebih mudah untuk dilakukan pembacaan "
2ebelum membuat ungsinya dengan PHP . terlebih dahulu kita buat tampilan H4<9nya"
,uka Ele indeF"php yang pernah digunakan sebelumnyam kita bersihkan hingga bersih
dari codingan apapun"
2elan/utnya buat tag H4<9 dasar meliputi Ghtml> sampai G#html>"
<!DOCTYPE HTML>
<html>
<head>
<title></title>
</head>
<body>
</body>
</html>
>ilan/utkan dengan pembuatan tabel sekaligus preCiew /ika dimasukan data. taruh
didalam tag Gbody>
<center>
<h1>DATA ANGGOTA</h1>
<br/>
<table width="50%">
<tr><td colspan="3"><form><input type="text" value="Cari
Anggota..."><button type="submit">Cari</button></form></td></tr>
<tr style="background-color:#000;color:#fff"
width="60%">
<td><strong>Id Anggota</strong></td>
<td><strong>Nama</strong></td>
<td><strong>Umur</strong></td>
</tr>
<tr>
<td>1</td>
<td>Yusuf Akhsan Hidayat</td>
<td><span style="margin-right:10px">21 </span>
<a href="#">Edit</a><a href="#">Hapus</a></td>
</tr>
<tr>
<td>2</td>
<td>Muhammad Pailus</td>
<td>22</td>
</tr>
</table>
</center>
<aka penampilannya men/adi seperti ini"
Demudian kita buat satu buah halaman lagi di older yang sama dengan indeF"php. kita
beri nama edit"php (yang nantinya digunakan sebagai halaman untuk edit data di
database)" >i Ele edit"php. kita isi dengan tag html dan dibagaian Gbody> isi dengan
orm seperti contoh dibawah"
<center>
<h1>Edit Data</h1>
<form>
<label>Nama: </label>
<input type="text" value="Nama Anggota"/>
<br/>
<label>Umur: </label>
<input type="number" value="21"/>
<br/>
<button type="submit">Update Data</button>
</form>
</center>
Halaman tampilan terakhir yang akan kita buat adalah untuk menanmpilkan hasil
pencarian. buat PHP baru yang satu older dengan indeF"php. kita beri nama cari"php".
halaman ini yang nantinya akan menampilkan data pencarian yang kita tulis diatas tabel
yang menampilkan data anggota di Ele indeF"php"2etelah diisi dengan tag PHP dasar.
lan/utnya dengan mengetik sintak berikut"
<center>
<h1>CARI ANGGOTA</h1><br/>
<p>
<strong>hasil pencarian untuk keyword :
"keyword"</strong></br></br>
<strong>Nama :</strong>Nama Anggota<br/>
<strong>Umur :</strong>Umur Anggota<br/>
<br/>
<a href="index.php">< Kembali Ke Daftar Anggota</a>
</p>
</center>
Hasilnya :
2o. mari mulai kding untuk select datanya. pada latihan sebelumnya telah dibuat Ele
connect"php yang berisi ungsi untuk koneksi ke database. kita gunakan lagi Ele tersebut
dengan menambahkan baris ini di indeF"php paling atas"
<?php require_once('connect.php');?>
>idalam Ele indeF"php. kita Cariabel untuk menyimpan query . hasil query. dan array hasil
querynya untuk kemudian kita masukan kedalam tabel yang sudah dibuat tadi" 2ilahkan
masukan kode php ini dibawah Gtr>nya %(*an))+ta,nama, #m#$". sebelumnya hapus
contoh data yang telah kita buat dengan H4<9 tadi"

<td><strong>Umur</strong></td>
</tr>
<?php
$sql = "SELECT * FROM anggota";
$query = mysql_query($sql) or die("Gagal
eksekusi");
while($row = mysql_fetch_assoc($query)) {
$id = $row['id_anggota'];
$nama = $row['nama_anggota'];
$umur = $row['umur'];
echo'<tr><td>'.$id.'</td><td>'.
$nama.'</td><td><span style="margin-right:10px">'.$umur.'</span>
<a href="#">Edit</a>|<a
href="#">Hapus</a></td></tr>';
}
}
?>
</table>

hasilnya :
:ntuk saat ini kita telah berhasil memasukan datanya kedalam tabel. yang kita buat
berikutnya adalah membuat input teFt pencarian yang ada diatas tabel berhasil
digunakan dan menampilkan hasil pencariannya di "ariphp
Yang dilakukan pertama adalah mengatur metode pengiriman data yang akan digunakan
dan url tu/uan pengiriman data. untuk itu perhatikan Gorm>. dan penambahan name
pada input type teFFtnya. edit sesuai dengan petun/uk dibawah"
<form action="cari.php" method="GET"><input name="keyword"
type="text" value="Cari Anggota..."/><button
type="submit">Cari</button></form>
<ari kita testing pada ection dan methodnya sudah ber/alan dengan baik. dengan
memasukan kata didalam ormnya kemudian klik tombol cari" :ntuk test disini saya
mengetikan keyword yussan"
(ika halamannya telah berubah. dan urlnya seperti pada gambar dibawah maka siap
untuk dilan/utkan kode berikutnya"
Yang diperlukan untuk membuat pencarian di inde=php sudah selesai. kini giliran beralih
kehalaman "ariphp untuk menampilkan datanya"
2eperti pada halaman inde=php. tambahkan ungsi untuk koneksi dengan database di
bagian paling atas" >ibawahnya Gh*>H!R- !1II54!G#h*>Gp> kita buat query untuk
menampilkan data berdasarkan keyword"
<p>
<?php
$keyword = $_GET['keyword'];//memanggil data dari
mget methog
$sql = "SELECT * FROM anggota WHERE nama_anggota
LIKE '%".$keyword."%'";
$query = mysql_query($sql) or die("Gagal
eksekusi");
while($row = mysql_fetch_assoc($query)) {
$id = $row['id_anggota'];
$nama =$row['nama_anggota'];
$umur=$row['umur'];
?>
<strong>hasil pencarian untuk keyword : "<?php echo
$keyword;?>"</strong></br></br>
<strong>Id_anggota :</strong><?php echo $id;?> |
<strong>Nama :</strong><?php echo $nama;?> |
<strong>Umur :</strong><?php echo $umur;?><br/>
<br/>
<?php
}
?>
<a href="index.php">< Kembali Ke Daftar Anggota</a>
</p>
!da yang baru kita temukan adalah J%I3467. merupakan cariabel dimana tempat data
berada. untuk indeksnya diisi dengan name dari input yang telah kita buat di orm html"
IN!ERT DATA
Yang diperlukan dalam insert data adalah. orm untuk tempat isi data dan Ele pemroses
data. untuk itu sebelumnya kita buat terlebih dahulu Ele prosesphp dalam older yang
sama dengan inde=php untuk meletakan prosesKproses yang diperlukan untuk latihan
kali ini"
Darena nantinya Ele prosesphp ini tidak hanya digunakan untuk proses tambah data.
maka kita buat switch agar prosesphp /uga bisa digunakan unutk edit dan delete data"
<?php
require_once('connect.php');
switch ($_GET['act']) {
case 'add':
break;
case 'edit':
break;
case 'delete':
break;
default:
echo "Perintah anda tidak tersedia";
break;
}
?>
Lile proses sudah disiapkan. kini kita buat orm untuk memasukan data. kembali lagi ke
inde=php
>ibagian atas cari anggota. kita buat orm baru lagi untuk melakukan penambahan
anggota"
<h1>DATA ANGGOTA</h1>
<form method="POST" action="proses.php?act=add">
<strong>Tambah Anggota</strong><br/>
<label>Nama :</label><input type="text"
name="nama"/><br/>
<label>Umur :</label><input type="number"
name="umur"/><br/>
<button type="submit">Tambah Data</button>
</form>
<br/>
dan hasilnya :
Dembali lagi ke Ele prosesphp, kini tu/uan kita adalah membuat prosesnya agar data dari
orm bisa terkirim ke database"
>idalam case ;add; sampai breakM silahkan tambahkan baris kode dibawah ini"
$nama = $_POST['nama'];
$umur = $_POST['umur'];
$sql = "INSERT INTO anggota(nama_anggota,umur)
VALUES('".$nama."',".$umur.")";
echo $sql;
if(mysql_query($sql)){
echo ("<SCRIPT LANGUAGE='JavaScript'>
window.alert('Data BERHASIL
ditambahkan');
window.location.href='index.php';
</SCRIPT>");
} else {
echo ("<SCRIPT LANGUAGE='JavaScript'>
window.alert('Data GAGAL
ditambahkan');
window.location.href='index.php';
</SCRIPT>");
}
>an akhirnya
EDIT DATA
9angkah berikutnya yang akan kita lakukan adalah edit data. dalam kasus ini penulis buat
ada & kondisi saat edit data. kondisi pertama. ketika proses menu/u orm edit data. dan
kondisi kedua adalah proses ketika memasukan hasil edit data ke database"
KONDISI PERTAMA
Pertama kita buat kondisi awal . yaitu ketika user klik ?editA yang ada di halaman
indeF"php maka akan masuk kehalaman edit"php dan siap untuk edit data" <asuk ke
inde=php di bagian while. edit Ga> nya men/adi seperti ini"
<a href="edit.php?id='.$id.'">Edit</a>|<a href="#">Hapus</a>
Iambarannya ketika masuk halaman edit"php. /uga mengirimkan data ke halaman
tersebut dengan get method" :rusan dihalaman inde=php sudah berakhir. kini kita
beralih kehalaman editphp
2eperti biasa masuk ungsi koneksi kedalam editphp, selan/utnya kita buat query untuk
menampilkan datanya dari database. karena disini kita hanya menampilkan satu baris
data sa/a. maka yang diperlukan adalah kolom unik. dan id%anggotalah yang digunakan.
dikirim melalui method get dari inde=php
>si keseluruhan editphp
<?php require_once('connect.php');?>
<?php
$sql = "SELECT * FROM anggota WHERE id_anggota = ".
$_GET['id'];
$query = mysql_query($sql) or die("Gagal eksekusi");
$row = mysql_fetch_assoc($query);
$id = $row['id_anggota'];
$nama = $row['nama_anggota'];
$umur = $row['umur'];
?>
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<center>
<h1>Edit Data</h1>
<form>
<label>Nama: </label>
<input name=nama type="text" value="<?php echo
$nama?>"/>
<br/>
<label>Umur: </label>
<input name=umur type="number" value="<?php echo
$umur?>"/>
<input name=id type="hidden" value="<?php echo
$id?>"/>
<br/>
<button type="submit">Update Data</button>
</form>
</center>
</body>
</html>
Lorm edit telah tersedia. kini giliran masuk ke kondisi kedua untuk memasukan datanya
kedalam database" 2ebelumnya edit method dan action orm yang ada di edit"php"
<form action="proses.php?act=edit" method="POST">
Dini giliran masuk kedalam proses"php untuk memberikan kondisional. memasukan hasil
edit kedalam database"
>alam case ;edit; sampai breakM silahkan masukan kode dibawah ini untuk proses edit
data di database"
$id = $_POST['id'];
$nama = $_POST['nama'];
$umur = $_POST['umur'];
$sql = "UPDATE anggota SET nama_anggota ='".
$nama."',umur=".$umur." WHERE id_anggota=".$id."";
if(mysql_query($sql)){
echo ("<SCRIPT LANGUAGE='JavaScript'>
window.alert('Data BERHASIL diedit');
window.location.href='index.php';
</SCRIPT>");
} else {
echo ("<SCRIPT LANGUAGE='JavaScript'>
window.alert('Data GAGAL diedit');
window.location.href='index.php';
</SCRIPT>");
}
DELETE DATA
,ab terakhir hapus data. hatiKhati /angan sampai salah hapus data. tidak banyak langkah
yang digunakan untuk melakukan delete data. so langsung mulai sa/a"
Pandangan pertama kita tertu/u pada inde=php, kita edit Ga>hapus. yang didalam while.
untuk kemudian diubah men/adi seperti berikut"
<a href="edit.php?id='.$id.'">Edit</a>|<a onclick="return
confirm(\'Apakah Anda Yakin\')" href="proses.php?act=delete&id='.
$id.'">Hapus</a>
index.php sudah selesai, kini beralih ke halaman proses.php,
perhatian kini pada case 'delete', karena proses delete akan kita
taruh didalam situ.
$id= $_GET['id'];
$sql = "DELETE FROM anggota WHERE id_anggota=".
$id."";
if(mysql_query($sql)){
echo ("<SCRIPT LANGUAGE='JavaScript'>
window.alert('Data BERHASIL
didelete');
window.location.href='index.php';
</SCRIPT>");
} else {
echo ("<SCRIPT LANGUAGE='JavaScript'>
window.alert('Data GAGAL didelete');
window.location.href='index.php';
</SCRIPT>");
}

Anda mungkin juga menyukai