CRUD - 2 Pendaftaran Siswa Baru
Nama: Azzura Mahendra Putra Malinus
NRP: 5025201211
Kelas: Pemrograman Web A
Tahun Ajaran: 2022/2023
Link repository: Repository
Tugas yang diberikan pada pertemuan ini adalah membuat sebuah website CRUD untuk pendaftaran siswa baru. Bahasa yang akan digunakan adalah PHP dan HTML untuk membuat struktur dan backend serta SQL untuk melakukan query. Selain itu, database yang akan digunakan adalah phpmyadmin. File-file yang diperlukan adalah sebagai berikut:
- config.php
- form-daftar.php
- form-edit.php
- hapus.php
- index.php
- list-siswa.php
- proses-edit.php
- proses-pendaftaran.php
- DDL.sql
config.php
<?php
$server = "localhost";
$user = "root";
$password = "";
$nama_database = "pendaftaran_siswa";
$db = mysqli_connect($server, $user, $password, $nama_database);
if( !$db ){
die("Gagal terhubung dengan database: " . mysqli_connect_error());
}
?>
form-pendaftaran.php
<?php
include("config.php");
if (isset($_POST['daftar'])) {
$nama = $_POST['nama'];
$alamat = $_POST['alamat'];
$jk = $_POST['jenis_kelamin'];
$agama = $_POST['agama'];
$sekolah = $_POST['sekolah_asal'];
$query = mysqli_query($db, "INSERT INTO calon_siswa VALUES ('', '$nama', '$alamat', '$jk', '$agama', '$sekolah')");
if ($query) {
header('Location: index.php?status=sukses');
} else {
header('Location: index.php?status=gagal');
}
} else {
die("Akses dilarang...");
}
?>
form-edit.php
<?php
include("config.php");
if (!isset($_GET['id'])) {
header('Location: list-siswa.php');
}
$id = $_GET['id'];
$query = mysqli_query($db, "SELECT * FROM calon_siswa WHERE id = $id");
$siswa = mysqli_fetch_assoc($query);
if (!mysqli_num_rows($query)) {
die("Data tidak ditemukan...");
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Formulir Edit Siswa Baru | SMK Coding</title>
</head>
<body>
<h3>Formulir Edit Siswa</h3>
<form action="proses-edit.php" method="POST">
<input type="hidden" name="id" value="<?php echo $siswa['id']?>">
<table cellpadding="4" style="border: 1px solid black; padding: 1% 10% 1% 1%;">
<tr>
<td><label for="nama">Nama: </label></td>
<td><input type="text" name="nama" placeholder="Nama lengkap" value="<?php echo $siswa['nama']?>"></td>
</tr>
<tr>
<td><label for="alamat">Alamat: </label></td>
<td><textarea name="alamat"><?php echo $siswa['alamat'] ?></textarea></td>
</tr>
<tr>
<td><label for="jenis_kelamin">Jenis Kelamin: </label></td>
<td>
<?php $jk = $siswa['jenis_kelamin'] ?>
<label><input type="radio" name="jenis_kelamin" value="laki-laki" <?php echo ($jk == 'laki-laki') ? "checked": "" ?>> Laki-laki</label>
<label><input type="radio" name="jenis_kelamin" value="perempuan" <?php echo ($jk == 'perempuan') ? "checked": "" ?>> Perempuan</label>
</td>
</tr>
<tr>
<td><label for="agama">Agama: </label></td>
<td>
<?php $agama = $siswa['agama'] ?>
<select name="agama">
<option <?php echo ($agama == 'Islam') ? "selected": "" ?>>Islam</option>
<option <?php echo ($agama == 'Kristen') ? "selected": "" ?>>Kristen</option>
<option <?php echo ($agama == 'Hindu') ? "selected": "" ?>>Hindu</option>
<option <?php echo ($agama == 'Budha') ? "selected": "" ?>>Budha</option>
<option <?php echo ($agama == 'Atheis') ? "selected": "" ?>>Atheis</option>
</select>
</td>
</tr>
<tr>
<td><label for="sekolah_asal">Sekolah Asal: </label></td>
<td><input type="text" name="sekolah_asal" placeholder="Nama sekolah" value="<?php echo $siswa['sekolah_asal'] ?>"></td>
</tr>
<tr>
<td><input type="submit" value="Simpan" name="simpan"></td>
</tr>
</table>
</form>
</body>
</html>
hapus.php
<?php
include("config.php");
if (isset($_GET['id'])) {
$id = $_GET['id'];
$query = mysqli_query($db, "DELETE FROM calon_siswa WHERE id = $id");
if ($query) {
header("Location: list-siswa.php");
} else {
die("Gagal menghapus...");
}
} else {
die("Akses dilarang...");
}
?>
index.php
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Pendaftaran Siswa Baru</title>
</head>
<body>
<h3>Pendaftaran Siswa Baru</h3>
<h1>SMK Coding</h1>
<h3>Menu</h3>
<ul>
<li><a href="form-daftar.php">Daftar Baru</a></li>
<li><a href="list-siswa.php">Pendaftar</a></li>
</ul>
<?php
if (isset($_GET['status']) && $_GET['status'] == 'sukses') {
echo "Pendaftaran siswa baru berhasil!";
} else {
echo "Pendaftaran gagal!";
}
?>
</body>
</html>
list-siswa.php
<?php include('config.php') ?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Pendaftaran Siswa Baru</title>
</head>
<body>
<h2>Siswa yang sudah mendaftar</h2>
<a href="form-daftar.php">[+] Tambah Baru</a> <br> <br>
<table border="1" cellpadding="4">
<tr>
<th>No</th>
<th>Nama</th>
<th>Alamat</th>
<th>Jenis Kelamin</th>
<th>Agama</th>
<th>Sekolah Asal</th>
<th>Tindakan</th>
</tr>
<?php
$query = mysqli_query($db, "SELECT * FROM calon_siswa");
while ($hasil = mysqli_fetch_assoc($query)) {
echo "<tr>";
echo "<td>".$hasil['id']."</td>";
echo "<td>".$hasil['nama']."</td>";
echo "<td>".$hasil['alamat']."</td>";
echo "<td>".$hasil['jenis_kelamin']."</td>";
echo "<td>".$hasil['agama']."</td>";
echo "<td>".$hasil['sekolah_asal']."</td>";
echo "<td>";
echo "<a href='form-edit.php?id=".$hasil['id']."'>Edit</a>";
echo " | ";
echo "<a href='hapus.php?id=".$hasil['id']."'>Hapus</a>";
echo "</td>";
echo "</tr>";
}
?>
</table>
<?php
echo "<p>Total: ".mysqli_num_rows($query)."</p>";
?>
</body>
</html>
proses-edit.php
<?php
include("config.php");
if (isset($_POST['simpan'])) {
$id = $_POST['id'];
$nama = $_POST['nama'];
$alamat = $_POST['alamat'];
$jk = $_POST['jenis_kelamin'];
$agama = $_POST['agama'];
$sekolah = $_POST['sekolah_asal'];
$query = mysqli_query($db, "UPDATE calon_siswa SET nama = '$nama', alamat = '$alamat', jenis_kelamin = '$jk', agama = '$agama', sekolah_asal = '$sekolah' WHERE id = $id");
if ($query) {
header('Location: list-siswa.php');
} else {
die("Gagal menyimpan perubahan...");
}
} else {
die("Akses dilarang...");
}
?>
proses-pendaftaran.php
<?php
include("config.php");
if (isset($_POST['daftar'])) {
$nama = $_POST['nama'];
$alamat = $_POST['alamat'];
$jk = $_POST['jenis_kelamin'];
$agama = $_POST['agama'];
$sekolah = $_POST['sekolah_asal'];
$query = mysqli_query($db, "INSERT INTO calon_siswa VALUES ('', '$nama', '$alamat', '$jk', '$agama', '$sekolah')");
if ($query) {
header('Location: index.php?status=sukses');
} else {
header('Location: index.php?status=gagal');
}
} else {
die("Akses dilarang...");
}
?>
DDL.sql
CREATE TABLE calon_siswa (
id INT NOT NULL AUTO_INCREMENT,
nama VARCHAR(64) NOT NULL,
alamat VARCHAR(255) NOT NULL,
jenis_kelamin VARCHAR(16) NOT NULL,
agama VARCHAR(16) NOT NULL,
sekolah_asal VARCHAR(64) NOT NULL,
CONSTRAINT PK_id_calon_siswa PRIMARY KEY (id)
);
Tampilan Website
Halaman awal
Daftar siswa
Form daftar
Form edit
Sekian dari blog ini, terima kasih sudah membaca!
Komentar
Posting Komentar