23-100 - Naufal Rabbani Sab'ul Fitri - TP8
23-100 - Naufal Rabbani Sab'ul Fitri - TP8
23-100 - Naufal Rabbani Sab'ul Fitri - TP8
Disusun Oleh:
Nama: Naufal Rabbani Sab’ul Fitri
NIM: 230411100100
Kelas: PAW 3E
Dosen Pengampu:
Nama: Devie Rosa Anamisa
NIP: 19841104 200812 2 003
Asisten Praktikum:
Nama: Glendy Hernandez Putra Mahardika G.
NIM: 220411100076
?>
<?php ob_start(); ?>
<?php
require_once "partials/config.php";
if (isset($_POST['submit'])) {
$username = $_POST['username'];
$password = $_POST['password'];
if ($users > 0) {
if ($users['password'] == md5($password)) {
$_SESSION['username'] = $username;
$_SESSION['user'] = $users;
if ($users['level'] == '2') {
$_SESSION['admin'] = $users;
$_SESSION['level'] = 'admin';
echo "
<script>
alert('login berhasil sebagai admin');
window.location.href = 'Admin/Index.php';</script>";
} else {
$_SESSION['level'] = 'user';
echo "
<script>
alert('login berhasil sebagai user');
window.location.href = 'Index.php';
</script>";
}
}
}else {
echo "<script> alert('username atau password salah')
</script>";
}
?>
<div class="mb-3">
<label for="password" class="form-
label">Password</label>
<input type="password" name="password" id="password"
class="form-control"
placeholder="Enter your password" required>
</div>
</div>
</div>
<?php
$content = ob_get_clean();
include 'partials/Master.php';
?>
2. Code Program
Admin/Indeks.php
<?php
session_start();
ob_start();
?>
<?php
if (!isset($_SESSION['admin'])) {
echo "<script>
window.location.href = '../Login.php';
</script>";
}
?>
<?php
$content = ob_get_clean();
include 'MasterAdmin.php';
?>
Admin/Nav.php
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
<li class="nav-item">
<a class="nav-link" href="Index.php">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Transaksi</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Laporan</a>
</li>
Admin/MasterAdmin.php
<?php require_once '../partials/Config.php'; ?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-
scale=1.0">
<title>Master Admin</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.m
in.css" rel="stylesheet"
integrity="sha384-
QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH"
crossorigin="anonymous">
<script
src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.8/dist/umd/popper
.min.js"
integrity="sha384-
I7E8VVD/ismYTF4hNIPjVp/Zjvgyol6VFvRkX/vR+Vc4jQkC+hVqc2pM8ODewa9r"
crossorigin="anonymous">
</script>
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.min
.js"
integrity="sha384-
0pUGZvbkm6XF6gxjEnlmuGrJXVbNuzT9qBBavbLwCsOGabYfZo0T0to5eqruptLy"
crossorigin="anonymous">
</script>
</head>
<body>
<?php include __DIR__ . '/Nav.php' ?>
</body>
</html>
Index.php
<?php
session_start();
ob_start();
?>
<?php
if (!isset($_SESSION['user'])) {
echo "<script>
window.location.href = 'Login.php';
</script>";
}
?>
Partials/nav.php
<nav class="navbar navbar-expand-md navbar-dark bg-dark shadow">
<div class="container">
<div class="dropdown">
<button type="button" class="btn btn-secondary rounded-
circle p-0" id="user-menu-button"
data-bs-toggle="dropdown" aria-expanded="false">
<img class="rounded-circle"
src="partials/assets/2.png" alt="user photo" width="40" height="40">
</button>
<ul class="dropdown-menu dropdown-menu-end" aria-
labelledby="user-menu-button">
<li>
<div class="dropdown-header text-muted">
<?=
htmlspecialchars($_SESSION['user']['username']); ?>
</div>
</li>
<li>
<a class="dropdown-item" href="Login.php">Sign
In</a>
</li>
<li>
<a class="dropdown-item" href="Logout.php">Sign
Out</a>
</li>
</ul>
</div>
</div>
</div>
</nav>
Partials/Master.php
<?php require_once 'Config.php'; ?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-
scale=1.0">
<title>Web StoreKu</title>
<link
href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.m
in.css" rel="stylesheet"
integrity="sha384-
QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH"
crossorigin="anonymous">
<script
src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.8/dist/umd/popper
.min.js"
integrity="sha384-
I7E8VVD/ismYTF4hNIPjVp/Zjvgyol6VFvRkX/vR+Vc4jQkC+hVqc2pM8ODewa9r"
crossorigin="anonymous">
</script>
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.min
.js"
integrity="sha384-
0pUGZvbkm6XF6gxjEnlmuGrJXVbNuzT9qBBavbLwCsOGabYfZo0T0to5eqruptLy"
crossorigin="anonymous">
</script>
</head>
<body>
<?php include __DIR__ . '/nav.php' ?>
</body>
</html>
Untuk halaman indeks user, terdapat verifikasi apabila $_SESSION bukan user
maka akan diarahkan ke login sama seperti di indeks admin. Jika iya, maka
menampilkan konten yang ada di indeks user. Untuk navbar user terdapat ikon
StoreKu dan menu dalam navbar user, yaitu home, transaksi, laporan, dan ikon
username serta sign out. Sama seperti admin, konten dalam indeks dan navbar
user ditampilkan dalam Master.php dalam bentuk content session