Enkapsulasi Objek dan Pewarisan Sifat Di PHP OOP
Cara Membuat CRUD Sangat Sederhana Dengan OOP (Object Oriented Programming) PHP Dan MySQL
Jika anda terbiasa membuat program secara Prosedural (struktur program yang menekankan pada sisi algoritmik yakni menulis program-program dari baris pertama sampai dengan baris terakhir secara berurutan), konsep pemrograman berbasis objek (teknik yang membagi program ke dalam object-object tertentu) mungkin sedikit susah dipahami.
Untuk memahami dengan mudah biasanya seorang
programmer akan cederung mempelajari dari basic terlebih dahulu. Yaitu dengan
memahami CRUD. CRUD adalah singkatan dari Create, Read, Update Dan Delete.
Crud berarti terdiri dari proses penginputan data ke database, menampilkan
data dari database, mengedit/mengupdate/mengubah data di database, dan juga
menghapus data pada database.
Membuat Database Baru
Kita buat database baru dengan nama
‘users’.
-- phpMyAdmin SQL Dump
-- version 3.5.2
-- https://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Apr 09, 2017 at 02:59 PM
-- Server version: 5.5.25a
-- PHP Version: 5.4.4
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET
@OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET
@OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET
@OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
--
-- Database: `users`
--
--
--------------------------------------------------------
--
-- Table structure for table `user`
--
CREATE TABLE IF NOT EXISTS `user` (
`id`
int(11) NOT NULL AUTO_INCREMENT,
`nama`
varchar(100) NOT NULL,
`alamat`
varchar(100) NOT NULL,
`usia`
int(11) NOT NULL,
PRIMARY
KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
--
-- Dumping data for table `user`
--
INSERT INTO `user` (`id`, `nama`, `alamat`, `usia`)
VALUES
(1, 'Sigit Dwi Prasetyo', 'Yogyakarta', 29),
(4, 'Ghaluh Ayu Imas Larasati', 'Klaten', 25);
--
--------------------------------------------------------
/*!40101 SET
CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET
CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET
COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Membuat koneksi database.
<?php
class database{
var
$host="localhost";
var
$user="root";
var
$pass="";
var
$db="users";
function
__construct(){
mysql_connect($this->host,$this->user,$this->pass);
mysql_select_db($this->db);
}
function
tampil_data(){
$data=mysql_query("SELECT * FROM user");
while($d=mysql_fetch_array($data)){
$hasil[]=$d;
}
return $hasil;
}
function
input($nama,$alamat,$usia){
mysql_query("insert into user values('','$nama','$alamat','$usia')");
}
function
edit($id){
$data=mysql_query("SELECT
* FROM user WHERE id='$id'");
while($x=mysql_fetch_array($data)){
$result[]=$x;
}
return $result;
}
function
update($id,$nama,$alamat,$usia){
mysql_query("UPDATE user SET nama='$nama',alamat='$alamat',usia='$usia'
WHERE id='$id'");
}
function
hapus($id){
mysql_query("DELETE FROM user where id='$id'");
}
}
Menampilkan Data Dari Database.
<?php
error_reporting(0);
include'database.php';
$db= new database();
?>
<?php
$hal = $_GET['hal'];
if (empty($hal)){
?>
<h1>CRUD OOP PHP</h1>
<h4>WWW.SIXGHAKREASI.COM</h4>
<h3>Data User</h3>
<a
href="tampil.php?hal=input">Input Data</a>
<table border="1">
<tr>
<th>No</th>
<th>Nama</th>
<th>Alamat</th>
<th>Usia</th>
<th>Opsi</th>
</tr>
<?php
$no=1;
foreach ($db->tampil_data() as $x) {
?>
<tr>
<td><?php echo $no++; ?></td>
<td><?php echo $x['nama']; ?></td>
<td><?php echo $x['alamat']; ?></td>
<td><?php echo $x['usia']; ?></td>
<td>
<a href="tampil.php?hal=edit&id=<?php echo $x['id']; ?>&aksi=edit">Edit</a>
<a href="proses.php?id=<?php echo $x['id']; ?>&aksi=hapus">Hapus</a>
</td>
</tr>
<?php
}
?>
</table>
<?php
}
else
if($hal == "input"){
?>
<h1>CRUD OOP PHP</h1>
<h2>WWW.SIXGHAKREASI.COM</h2>
<h3>Tambah Data User</h3>
<form
action="proses.php?aksi=tambah" method="post">
<table>
<tr>
<td>Nama</td>
<td><input type="text"
name="nama"></td>
</tr>
<tr>
<td>Alamat</td>
<td><input type="text"
name="alamat"></td>
</tr>
<tr>
<td>Usia</td>
<td><input type="text"
name="usia"></td>
</tr>
<tr>
<td></td>
<td><input type="submit"
value="Simpan"></td>
</tr>
</table>
</form>
<?php
}
else
if($hal == "edit"){
?>
<h1>CRUD OOP PHP</h1>
<h2>WWW.SIXGHAKREASI.COM</h2>
<h3>Tambah Data User</h3>
<form
action="proses.php?aksi=update" method="post">
<?php
foreach($db->edit($_GET['id']) as $d){
?>
<table>
<tr>
<td>Nama</td>
<td>
<input type="hidden" name="id" value="<?php
echo $d['id'] ?>">
<input type="text" name="nama" value="<?php
echo $d['nama'] ?>">
</td>
</tr>
<tr>
<td>Alamat</td>
<td><input type="text" name="alamat"
value="<?php echo $d['alamat'] ?>"></td>
</tr>
<tr>
<td>Usia</td>
<td><input type="text" name="usia"
value="<?php echo $d['usia'] ?>"></td>
</tr>
<tr>
<td></td>
<td><input type="submit"
value="Simpan"></td>
</tr>
</table>
<?php
}
?>
</form>
<?php
}
?>
Membuat Aksi Tambah, Edit dan Hapus.
<?php
include 'database.php';
$db = new database();
$aksi = $_GET['aksi'];
if($aksi
== "tambah"){
$db->input($_POST['nama'],$_POST['alamat'],$_POST['usia']);
header("location:tampil.php");
}elseif($aksi
== "hapus"){
$db->hapus($_GET['id']);
header("location:tampil.php");
}elseif($aksi
== "update"){
$db->update($_POST['id'],$_POST['nama'],$_POST['alamat'],$_POST['usia']);
header("location:tampil.php");
}
?>
Sekian dulu tutorial Cara Membuat CRUD Sangat Sederhana Dengan OOP (Object Oriented Programming) PHP Dan MySQL. Jumpa lagi ditutorial selanjutnya.
Kegiatan Pembelajaran Mapel PBO - XI RPL 2 (Guru Mapel : Darsu, S.Kom)
Selama Program Upskilling dan Reskilling Guru Kejuruan Berstandar Industri Tahun 2022 Pelatihan Game Edukasi Tiga Dimensi angkatan 1 (07 Agustus sampai dengan 11 September 2022)
Pembelajaran Mata Pelajaran PBO di Kelas XI RPL 2, maaf ya bapak mengirimkan penugasan pembelajaran KBM di kelas silahkan dilaksanakan dengan tertib.
Setiap Selasa : Jam Ke-1 sampai dengan Jam ke 4 (07.00 - 10.00)
Setiap Rabu : Jam Ke-4 sampai dengan Jam ke 7 (09.15 - 13.00)
=========================================================================
Selasa 09 Agustus 2022 (Materi : Pengertian Enkapsulasi (Public, Private, Protected) dan kegiatan pembelajaran klik disini !)
Rabu 10 Agustus 2022 (Materi : Inheritance : PHP & Object Oriented Programming (OOP) dan kegiatan pembelajaran klik disini !)
=========================================================================
Selasa 16 Agustus 2022 (Materi : Polimorfisme dalam Pemrograman Objek PHP dan kegiatan pembelajaran klik disini !)
Rabu 17 Agustus 2022
=========================================================================
Selasa 23 Agustus 2022 (Materi : Pengertian dan Fungsi Variabel $this dalam OOP dalam Pemrograman Objek PHP dan kegiatan pembelajaran klik disini !)
Rabu 24 Agustus 2022 (Materi : Pengertian Abstract Class dan Abstract Method dalam Pemrograman Objek PHP dan kegiatan pembelajaran klik disini !)
=========================================================================
Selasa 30 Agustus 2022 (Materi : Pengertian Object Interface Dalam Pemrograman Berbasis Objek dalam Pemrograman Objek PHP dan kegiatan pembelajaran klik disini !)
Rabu 31 Agustus 2022 (Materi : Pengertian Polimorfisme Dalam Pemrograman Berbasis Objek dalam Pemrograman Objek PHP dan kegiatan pembelajaran klik disini !)
=========================================================================
Selasa 06 September 2022 (Materi : Perbandingan antara PHP vs Node.js, Lebih Baik Belajar yang mana? dalam Pemrograman Objek PHP dan kegiatan pembelajaran klik disini !)
Rabu 07 September 2022 (Materi : Framework Pengembangan Website Terbaik di Tahun 2022 dalam Pemrograman Objek PHP dan kegiatan pembelajaran klik disini !)
=========================================================================