Anda di halaman 1dari 11

CREATE READ UPDATE DELETE (CRUD)

MENGGUNAKAN MYSQL DAN PHP

1. Kita akan membuat table data_siswa di dalam database akademik dengan susunan table seperti
berikut:

id siswa_nis siswa_nama siswa_email siswa_password


1 1234 Aditya Wira widhayakaadityawira@gmail.com 1234
Widhayaka
2 1235 Anika anikanenoharan105@gmail.com 1235
nenoharan
3 1236 Ika Nabila snova8115@gmail.com 1236
4 1237 Kristiani kristianisihombing0304@gmail.com 1237
Sihombing

2. Pastikan service Apache dan Mysql sudah berjalan dengan mengecek melalui Control Panel
seperti berikut:

3. Buka command prompt, kemudian panggil aplikasi mysql dengan perintah berikut:
C:\xampp\mysql\bin\mysql.exe -u root atau sesuaikan dengan jalur/path yang di computer
masing-masing

4. Buat database baru bernama akademik dengan perintah berikut:


create database akademik;
5. Gunakan database tersebut untuk membuat table data_siswa
use akademik;

6. Buat table data_siswa dan kolom-kolomnya seperti berikut:


create table data_siswa (
-> id INT NOT NULL AUTO_INCREMENT,
-> siswa_nis CHAR(50) NOT NULL,
-> siswa_nama VARCHAR(150),
-> siswa_email VARCHAR(150),
-> siswa_password VARCHAR(255),
-> PRIMARY KEY(id)
-> );

7. Pastikan susunan kolomnya sudah benar dengan perintah berikut:


desc data_siswa;

8. Sekarang kita sudah memiliki 1 database dan 1 tabel


Database akademik
Tabel data_siswa
9. Berikutnya kita akan gunakan script php untuk melakukan operasi CRUD (create read update
delete) terhadap database yang kita buat barusan
10. Buka folder htdocs yang ada dalam xampp dengan menekan tombol Explorer pada Control Panel
Xampp
11. Buat folder baru dengan nama akademik
12. Buka aplikasi Notepad++ kemudian buatlah sebuah file baru yang berisi script php berikut:
<?php
//Koneksi Database
$host = "localhost"; // Host name
$username = "root"; // Mysql username
$password = ""; // Mysql password
$db_name = "akademik"; // Database name
$charset = 'utf8mb4';

// Connect to server and select databse.


$dsn = "mysql:host=$host;dbname=$db_name;charset=$charset";
try {
$db = new PDO($dsn, $username, $password);
} catch (\PDOException $e) {
throw new \PDOException($e->getMessage(), (int)$e->getCode());
}
$db->exec('SET FOREIGN_KEY_CHECKS = 0');

date_default_timezone_set('Asia/Jakarta');

Simpan berkas baru tersebut ke dalam folder akademik yang ada di dalam folder htdocs xampp
yang kita buat sebelumnya dengan nama koneksi.php

13. Buat kembali berkas baru di dalam Notepad++ dengan isi sebagai berikut:
<?php
include 'koneksi.php';
?>
<html>

<head>
<title>Daftar Siswa</title>
<style type="text/css">
table {
width: 100%;
}

table,
th,
td {
border: 1px solid black;
border-collapse: collapse;
}

h2 {
display: block;
text-align: center;
margin-bottom: 10px;
}
</style>
</head>

<body>
<h2>Daftar Nama Siswa</h2>
<p><a href="add.php">tambah data siswa</a></p>
<table>
<thead>
<tr>
<th>No.</th>
<th>NIS</th>
<th>Nama Siswa</th>
<th>Alamat Email</th>
<th>Password Login</th>
<th>Aksi</th>
</tr>
</thead>
<tbody>
<?php
$sql = $db->prepare("SELECT * FROM data_siswa");
$sql->execute();
$no = 1;
foreach ($sql->fetchAll() as $row) { ?>
<tr>
<td><?= $no++ ?></td>
<td><?= $row['siswa_nis'] ?></td>
<td><?= $row['siswa_nama'] ?></td>
<td><?= $row['siswa_email'] ?></td>
<td><?= $row['siswa_password'] ?></td>
<td>
<a href="ubah.php&id=<?= $row['id']
?>">ubah</a>&nbsp;
<a href="hapus.php&id=<?= $row['id'] ?>">hapus</a>
</td>
</tr>
<?php } ?>
</tbody>
</table>
</body>

</html>

Simpan ke dalam folder akademik dengan nama index.php


Sekarang kita memiliki 2 file dalam folder akademik seperti berikut:

14. Buka browser dengan alamat:


http://localhost/akademik/ sehingga akan muncul halaman seperti berikut
15. Buat berkas baru lagi di Notepad++ dan isi dengan script berikut:
<?php
include 'koneksi.php';
?>
<form style="width: 50%;" method="post" action="">
<fieldset>
<legend>Data Siswa</legend>
<label>NIS</label><br>
<input type="number" name="nis" required><br>
<label>Nama Lengkap</label><br>
<input type="text" name="nama" required><br>
<label>Alamat Email</label><br>
<input type="email" name="email" required><br>
<label>Password</label><br>
<input type="password" name="password" required><br><br>
<button type="submit" name="simpan">Simpan</button>
</fieldset>
</form>
Simpan Kembali dalam folder akademik dengan nama add.php. Akses halaman tersebut dengan
klik link yang di halaman index

Jika berhasil kalian akan membuka halaman baru seperti berikut:


16. Masih di halaman add.php tambahkan script berikut setelah baris kode
<?php
include 'koneksi.php';
?>
Sehingga menjadi:
<?php
include 'koneksi.php';
if (isset($_POST['simpan'])) {
$nis = $_POST['nis'];
$nama = $_POST['nama'];
$email = $_POST['email'];
$password = $_POST['password'];
$sql = $db->prepare("INSERT INTO data_siswa SET siswa_nis = ?,
siswa_nama = ?, siswa_email = ?, siswa_password = ?");
$sql->bindParam(1, $nis);
$sql->bindParam(2, $nama);
$sql->bindParam(3, $email);
$sql->bindParam(4, $password);
if (!$sql->execute()) {
print_r($sql->errorInfo());
} else {
echo 'data siswa berhasil disimpan<br>';
echo 'kembali ke <a href="index.php">halaman utama</a>';
}
}
?>

17. Lakukan pengujian dengan mengisi data siswa seperti berikut:


id siswa_nis siswa_nama siswa_email siswa_password
1 1234 Aditya Wira widhayakaadityawira@gmail.com 1234
Widhayaka
2 1235 Anika anikanenoharan105@gmail.com 1235
nenoharan
3 1236 Ika Nabila snova8115@gmail.com 1236
4 1237 Kristiani kristianisihombing0304@gmail.com 1237
Sihombing
Sesuaikan dengan data yang ada pada table di atas. Jika sudah sesuai, tekan tombol Simpan
seperti yang ditunjukkan no.5 pada gambar di atas. Jika berhasil makan akan muncul keterangan
seperti berikut:

Klik tautan halaman utama seperti pada gambar untuk kembali ke index dan lihat hasilnya

Data siswa sudah masuk ke dalam database


Selamat, kalian sudah berhasil melakukan operasi Create dan Read, operasi berikutnya adalah
Update dan Delete.
18. Untuk membuat operasi Update, buat berkas baru dalam Notepad++ dengan script sebagai
berikut:
<?php
include 'koneksi.php';
//ambil data berdasar id yang ada di index.php
$id = isset($_GET['id']) ? $_GET['id'] : '';
$sql = $db->prepare("SELECT * FROM data_siswa WHERE id = :idna");
$sql->execute(array(':idna' => $id));
$data = $sql->fetch(PDO::FETCH_ASSOC);

if (isset($_POST['simpan'])) {
$id = $_POST['id'];
$nis = $_POST['nis'];
$nama = $_POST['nama'];
$email = $_POST['email'];
$password = $_POST['password'];
$sql = $db->prepare("UPDATE data_siswa SET siswa_nis = ?, siswa_nama =
?, siswa_email = ?, siswa_password = ? WHERE id = ?");
$sql->bindParam(1, $nis);
$sql->bindParam(2, $nama);
$sql->bindParam(3, $email);
$sql->bindParam(4, $password);
$sql->bindParam(5, $id);
if (!$sql->execute()) {
print_r($sql->errorInfo());
} else {
echo 'data siswa berhasil diubah<br>';
echo 'kembali ke <a href="index.php">halaman utama</a>';
}
}
?>
<form style="width: 50%;" method="post" action="">
<fieldset>
<legend>Ubah Data Siswa</legend>
<label>NIS</label><br>
<input type="hidden" name="id" value="<?= $data['id'] ?>">
<input type="number" name="nis" value="<?= $data['siswa_nis']
?>"><br>
<label>Nama Lengkap</label><br>
<input type="text" name="nama" value="<?= $data['siswa_nama']
?>"><br>
<label>Alamat Email</label><br>
<input type="email" name="email" value="<?= $data['siswa_email']
?>"><br>
<label>Password</label><br>
<input type="text" name="password" value="<?=
$data['siswa_password'] ?>"><br><br>
<button type="submit" name="simpan">Simpan</button>&nbsp; <a
href="index.php">Halaman Index</a>
</fieldset>
</form>

Simpan dengan nama ubah.php di folder akademik, sehingga sekarang kita memiliki berkas-
berkas seperti berikut:
Untuk melakukan pengujian pada berkas ubah.php, buka halaman index.php kemudian klik
tautan ubah seperti berikut:

Sehingga tampil halaman baru seperti berikut:

Lakukan pengubahan seperti berikut:


Kemudian tekan tombol Simpan, sehingga muncul pesan berikut:

Periksa di halaman utama/index. Jika berhasil, maka hasilnya akan tampak seperti berikut:

Selamat, kalian telah berhasil melakukan operasi Create, Read, dan Update
Lakukan penambahan data untuk data siswa yang lain sesuai table berikut:
id siswa_nis siswa_nama siswa_email siswa_password
1 1234 Aditya Wira widhayakaadityawira@gmail.com 1234
Widhayaka
2 1235 Anika anikanenoharan105@gmail.com 1235
nenoharan
3 1236 Ika Nabila snova8115@gmail.com 1236
4 1237 Kristiani kristianisihombing0304@gmail.com 1237
Sihombing

19. KUIS!
Lakukan operasi Delete pada salah satu data yang sudah masuk database.
Tersedia REWARD bagi siswa yang berhasil melakukan operasi delete pertama

Anda mungkin juga menyukai