Anda di halaman 1dari 6

MODUL VI

MENGOLAH DATA DENGAN PHP DAN MYSQL (CRUD BAGIAN 3)

Mengolah Data Bagian 3


Bila pada bab sebelumnya kita sudah bisa untuk menampilkan data secara keseluruhan
maupun data spesifik dan juga menghapus data, maka pada bagian kali ini, kita ingin dapat
menambahkan data melalui form dihalaman admin, juga tentunya dapat mengubah data
yang bersangkutan, adapun point yang akan dibahas pada bagian ini adalah:
 Menambahkan data (berupa data mahasiswa) – Create data
 Memperbaharui data atau update data – Update data

Langkah-langkah yang harus dilakukan


Untuk melanjutkan kode bagian sebelumnya, hal yang pertama harus kita lakukan adalah
dengan menambahkan fungsi tambah kedalam file functions.php, tambahkan kode berikut
diakhir baris kode yang ada, tujuannya adalah untuk membuat fungsi baru.

Berikut adalah baris kode yang harus ditambahkan:


Lanjutan functions.php
Ketikkan kode program seperti dibawah ini:
function tambah($data) {
global $conn;
$npm = $data["npm"];
$nama = $data["nama"];
$email = $data["email"];
$jurusan = $data["jurusan"];

$query = "INSERT INTO mahasiswa VALUES


('', '$npm', '$nama', '$email', '$jurusan')";

mysqli_query($conn, $query);

return mysqli_affected_rows($conn);
}

Penjelasan kode program diatas:


1. Perhatikan source code diatas, kita menyiapkan masing-
masing variable untuk menampung properti data mahasiswa yang isinya nanti akan kita
dapatkan melalui inputan form untuk menambahkan data mahasiswa.
2. perhatikan query berikut:
INSERT INTO mahasiswa VALUES ('', '$npm', '$nama', '$email', '$jurusan')
Query tersebut digunakan untuk insert data / menambahkan data kedalam tabel
mahasiswa yang ada di database, sesuaikan urutannya seperti struktur table yang ada,
yaitu id, npm, nama, email, dan jurusan, yang masing-masingnya diisi oleh variabel
yang sudah memiliki data. Untuk bagian id kita kosongkan datanya saat insert karena id
bersifat auto_increment pada tabel mahasiswa.

Lalu langkah selanjutnya adalah membuat file tambah.php, berikut source codenya:
tambah.php
<?php
session_start();

if (!isset($_SESSION["login"])) {
header("Location: login.php");
exit;
}

equire 'functions.php';

if (isset($_POST["submit"])) {
if (tambah($_POST) > 0) {
echo " <script>
alert('Data berhasil ditambahkan!');
document.location.href = 'index.php';
</script>";
} else {
echo " <script>
alert('Data gagal ditambahkan!');
document.location.href = 'index.php';
</script>";
}
}
?>

Penjelasan kode program diatas:


1. Seperti pada halaman-halaman
sebelumnya, kita tambahkan fungsi session diawal baris kode untuk mencegah adanya
user yang masuk pada halaman ini tanpa melewati form login.
2. Pada saat kita menekan tombol untuk
menambahkan data, saat itu kita mengaktifkan baris kode if (isset($_POST["submit"]))
yang nantinya akan menjalankan perintah untuk memanggil fungsi tambah yang ada
pada file functions.php dengan mengirimkan data-data yang telah di ketikkan pada
form input data dengan menggunakan metode POST. Bila data berhasil ditambahkan
maka akan muncul keterangan bahwa data berhasil ditambahkan, lalu kita diarahkan ke
halaman index.php.
Tambahkan kode berikut untuk melanjutkan file tambah.php

Lanjutan tambah.php
<!DOCTYPE html>
<html>
<head>
<title>Tambah data mahasiswa</title>
</head>
<body>
<h1>Tambah data mahasiswa</h1>
<form action="" method="POST ">
<ul>
<li>
<label for="npm">NPM :</label>
<input type="text" name="npm" id="npm" required>
</li>
<li>
<label for="nama">Nama :</label>
<input type="text" name="nama" id="nama" >
</li>
<li>
<label for="email">Email :</label>
<input type="text" name="email" id="email" >
</li>
<li>
<label for="jurusan">Jurusan :</label>
<input type="text" name="jurusan" id="jurusan" >
</li>
<li>
<button type="submit" name="submit">Tambah Data</button>
</li>
</ul>
</form>
</body>
</html>

Penjelasan kode program diatas:


1. Pada bagian kali ini kita membuat form untuk menambahkan data mahasiswa dengan
metode POST, lalu membuat input sesuai dengan data yang harus dikirimkan, juga
harus diberi atribut name agar data dapat diambil dan bisa dikirim pada tabel
mahasiswa.
2. Pada bagian akhir siapkan tombol atau button yang mempunyai atribut name yang
sama dengan baris kode yang ada di atas, yaitu submit agar sesuai dengan if
(isset($_POST["submit"])).
Pada baris akhir, data yang kita tambahkan telah tampil, dan artinya data tersebut telah
berhasil ditambahkan dan telah masuk kedalam database yang kita miliki.
Setelah berhasil membuat fungsi tambah data, selanjutnya kita akan membuat fungsi untuk
mengubah/update data mahasiswa. Langkah pertama yaitu tambahkan baris kode berikut
pada akhir baris kode sebelumnya, tujuannya untuk membuat fungsi ubah pada file
functions.php.
Lanjutan functions.php
function ubah($data) {
global $conn;

$id = $data["id"];
$npm = $data["npm"];
$nama = $data["nama"];
$email = $data["email"];
$jurusan = $data["jurusan"];

$query = "UPDATE mahasiswa SET npm = '$npm', nama = '$nama',


email = '$email', jurusan = '$jurusan' WHERE id = $id";

mysqli_query($conn, $query);

return mysqli_affected_rows($conn);
}

Penjelasan kode program diatas:


1. Perhatikan baris kode yang ada, kita menyiapkan beberapa variabel yang digunakan
untuk menampung isi dari data yang baru untuk mengubah data yang lama.
2. Data yang lama di ubah dengan menggunakan query berikut ini:
UPDATE mahasiswa SET npm = '$npm', nama = '$nama', email = '$email', jurusan
= '$jurusan' WHERE id = $id
Dengan query diatas, kita mengubah data yang lama menjadi data yang baru dengan
cara mengisi data yang lama yang ada dalam database dengan variable yang telah di
isi oleh data baru.
3. fungsi mysqli_query digunakan untuk mengeksekusi query tersebut.

Langkah selanjutnya adalah membuat file ubah.php yang didalamnya di isi dengan baris
kode berikut ini:

ubah.php
<?php
session_start();

if (!isset($_SESSION["login"])) {
header("Location: login.php");
exit;
}

require 'functions.php';

$id = $_GET["id"];
$students = kueri("SELECT * FROM mahasiswa WHERE id = $id")[0];

if (isset($_POST["submit"])) {
if (ubah($_POST) > 0) {
echo " <script>
alert('Data berhasil diubah!');
document.location.href = 'index.php';
</script>";
} else {
echo "
<script>
alert('Data gagal diubah!');
document.location.href = 'index.php';
</script>";
}
}
?>

Penjelasan kode program diatas:


1. Seperti pada halaman-halaman sebelumnya, kita tambahkan fungsi session diawal
baris kode untuk mencegah adanya user yang masuk pada halaman ini tanpa melewati
form login.
2. Pada baris kode diatas, kita membuat variabel $id yang diisikan dengan id yang dimiliki
oleh mahasiswa yang akan diubah datanya, lalu mengambil semua data yang
dimilikinya, lalu kita menjalankan fungsi ubah if (ubah($_POST) > 0) dengan cara
menekan tombol ubah data, yaitu if (isset($_POST["submit"])).
3. Bila data berhasil ditambahkan maka akan muncul keterangan bahwa data berhasil
diubah, lalu kita diarahkan ke halaman index.php.

Tambahkan kode berikut untuk melanjutkan file ubah.php


Lanjutan ubah.php
<!DOCTYPE html>
<html>
<head>
<title>Ubah data mahasiswa</title>
</head>
<body>
<h1>Ubah data mahasiswa</h1>
<form action="" method="POST ">
<input type="hidden" name="id" value="<?= $students["id"]; ?>">
<ul>
<li>
<label for="npm">NPM :</label>
<input type="text" name="npm" id="npm" value="<?= $students["npm"]; ?>">
</li>
<li>
<label for="nama">Nama :</label>
<input type="text" name="nama" id="nama" value="<?= $students["nama"];
?>">
</li>
<li>
<label for="email">Email :</label>
<input type="text" name="email" id="email" value="<?= $students["email"];
?>">
</li>
<li>
<label for="jurusan">Jurusan :</label>
<input type="text" name="jurusan" id="jurusan" value="<?=
$students["jurusan"]; ?>">
</li>
<li>
<button type="submit" name="submit">Ubah Data</button>
</li>
</ul>
</form>
</body>
</html>

Penjelasan kode program diatas:


1. Pada source code diatas, kita sedang membuat form untuk mengubah data mahasiswa.
2. Perhatikan pada baris berikut ini:
<input type="hidden" name="id" value="<?= $students["id"]; ?>">
type = hidden digunakan untuk menyembunyikan inputan data id, yang dimaksudkan
agar properti id ini tidak berubah, karena didalam database, id adalah uato_increment,
yaitu sifatnya yang selalu bertambah tiap ada data baru yang masuk.
3. Perhatikan juga setiap tag input yang ada, masing-masingnya memiliki atribut value
yang hampir serupa, yaitu: value="<?= $students["nama"]; ?>", atribut ini digunakan
agar tiap inputan yang ada sudah terisi data lama yang akan diubah, agar dapat
memudahkan admin dalam merubah atau meng-update data.

Anda mungkin juga menyukai