CRUD Rest API Webservice Menggunakan PHP dan MySQL - Part 1
Berikut adalah Tutorial : CRUD Rest API Webservice Menggunakan PHP dan MySQL - Part 1
Langkah pertama dalam pembuatan CRUD Rest API Webservice adalah membuat database, saya asumsikan anda sudah mengetahui dalam pembuatan database berikut adalah script untuk pembuatan database.
nama tabel : produk
CREATE TABLE `produk` (
`id` int(6) unsigned NOT NULL AUTO_INCREMENT,
`nama_produk` varchar(30) DEFAULT NULL,
`harga` int(50) DEFAULT NULL,
`tipe_produk` varchar(30) DEFAULT NULL,
`stok` int(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Tambahkan beberapa data tabel tersebut :
INSERT INTO `produk`(`nama_produk`, `harga`, `tipe_produk`, `stok`) VALUES ('Super 25',30000,'Baju',10);
INSERT INTO `produk`(`nama_produk`, `harga`, `tipe_produk`, `stok`) VALUES ('Jeas Ver',40000,'Baju',10);
INSERT INTO `produk`(`nama_produk`, `harga`, `tipe_produk`, `stok`) VALUES ('Uyta',50000,'Baju',10);
INSERT INTO `produk`(`nama_produk`, `harga`, `tipe_produk`, `stok`) VALUES ('Vander',60000,'Baju',10);
Setelah menyelesaikan pembuatan database dan tabel selanjutnya kita akan
membuat API untuk proses simpan data,ubah data dan hapus data, berikut adalah
struktur folder dan file yang akan kita buat :
langkah awal kita akan membuat project dengan nama dbrest didalam
project tersebut terdiri dari beberapa folder yang dibutuhkan yaitu :
- api digunakan untuk menyimpan file api
- config digunakan untuk menyimpan file koneksi
- readapi, digunakan untuk membaca api pada web browser didalam folder ini ada folder layout yang digunakan untuk menyimpan file css.
Membuat Koneksi Database
Sebelum membuat api kita terlebih akan membuat file koneksi.php yang tersimpan
dalam folder config file ini sangat penting karena akan digunakan untuk
melakukan koneksi database, berikut adalah coding dari file koneksi.php
<?php
define('HOST','localhost');define('USER','root');define('DB','dbrest');define('PASS','');$conn = new mysqli(HOST,USER,PASS,DB) or die('Connetion error to the database');
Membuat API CRUD
seperti kita lihat pada gambar diatas didalam folder api terdiri dari beberapa file yang akan dibuat yaitu :- api_tampil.php
- api_tambah.php
- api_edit.php
- api_ubah.php
- api_hapus.php
api_tampil.php
api_tampil.php digunakan untuk menampilkan data dalam bentuk json, berikut
adalah coding dari file tersebut :
<?php
require_once('../config/koneksi.php');
$myArray = array();
if ($result = mysqli_query($conn, "SELECT * FROM produk ORDER BY id ASC")) {
while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
$myArray[] = $row;
}
mysqli_close($conn);
echo json_encode($myArray);
}
api_edit.php
api_edit.php digunakan untuk memilih data yang akan kita ubah, berikut adalah
coding dari file tersebut:
<?php
require_once('../config/koneksi.php');
if (isset($_GET['id'])) {
$id = $_GET['id'];
$SQL = $conn->prepare("SELECT * FROM produk WHERE id=? ORDER BY id ASC");
$SQL->bind_param("i", $id);
$SQL->execute();
$hasil = $SQL->get_result();
$myArray = array();
while ($users = $hasil->fetch_array(MYSQLI_ASSOC)) {
$myArray = $users;
}
echo json_encode($myArray);
} else {
echo "data tidak ditemukan";
}
api_ubah.php
api_ubah.php digunakan untuk mengubah data, berikut adalah coding dari file
tersebut:
<?php
require_once('../config/koneksi.php');
if (isset($_POST['id'])) {
$id = $_POST['id'];
$nama_produk = $_POST['nama_produk'];
$tipe_produk = $_POST['tipe_produk'];
$harga = $_POST['harga'];
$stok = $_POST['stok'];
$sql = $conn->prepare("UPDATE produk SET nama_produk=?, tipe_produk=?, harga=?, stok=? WHERE id=?");
$sql->bind_param('ssddd', $nama_produk, $tipe_produk, $harga, $stok, $id);
$sql->execute();
if ($sql) {
//echo json_encode(array('RESPONSE' => 'SUCCESS'));
header("location:../readapi/tampil.php");
} else {
echo json_encode(array('RESPONSE' => 'FAILED'));
}
} else {
echo "GAGAL";
}
api_hapus.php
api_hapus.php digunakan untuk menghapus data, berikut adalah coding dari file
tersebut:
<?php
require_once('../config/koneksi.php');
if (isset($_GET['id'])) {
$id = $_GET['id'];
$sql = $conn->prepare("DELETE FROM produk WHERE id=?");
$sql->bind_param('i', $id);
$sql->execute();
if ($sql) {
echo json_encode(array('RESPONSE' => 'SUCCESS'));
//header("location:../readapi/tampil.php");
} else {
echo json_encode(array('RESPONSE' => 'FAILED'));
}
} else {
echo "GAGAL";
}
api_tambah.php
api_tambah.php digunakan untuk menambah data, berikut adalah coding dari file
tersebut:
<?php
require_once('../config/koneksi.php');
if (isset($_POST['nama_produk']) && isset($_POST['tipe_produk']) && isset($_POST['harga']) && isset($_POST['stok'])) {
$nama_produk = $_POST['nama_produk'];
$tipe_produk = $_POST['tipe_produk'];
$harga = $_POST['harga'];
$stok = $_POST['stok'];
$sql = $conn->prepare("INSERT INTO produk (nama_produk, tipe_produk, harga, stok) VALUES (?, ?, ?, ?)");
$sql->bind_param('ssdd', $nama_produk, $tipe_produk, $harga, $stok);
$sql->execute();
if ($sql) {
//echo json_encode(array('RESPONSE' => 'SUCCESS'));
header("location:../readapi/tampil.php");
} else {
echo json_encode(array('RESPONSE' => 'FAILED'));
}
} else {
echo "GAGAL";
}
Pembuatan API CRUD telah selesai berikut nya akan dilanjutkan pada artikel
berikutnya yaitu pada link berikut :
Selain itu anda juga dapat membaca :
Baca juga :
- 30+ Latihan Soal dan Jawaban PAS Fisika Kelas XI K13 Terbaru
- 30+ Latihan Soal dan Jawaban PAS Kimia Kelas XI K13 Terbaru
- 30+ Latihan Soal dan Jawaban PAS Matematika Kelas XI K13 Terbaru
- 30+ Latihan Soal dan Jawaban PAS Matematika Peminatan Kelas XI K13 Terbaru
- 40 Latihan Soal dan Jawaban Bahasa Indonesia PAS Ganjil Kelas XI K13 Terbaru
- 40 Latihan Soal dan Jawaban PAI PAS Ganjil Kelas XI K13 Terbaru
- 40 Soal dan Jawaban Bahasa Inggris PAS Ganjil Kelas XI K13 Terbaru
1 komentar
https://jatimtimes.com
https://malangtimes.com
https://jatimtimes.com/baca/238073/20210322/133300/stok-beras-surplus-pemkab-malang-tegaskan-tak-perlu-impor