Disusun Oleh :
Dosen Pengampu :
2019
A. Pembahasan Website Belanja
Belanja merupakan website yang bergerak di bidang perdaganggan
online. Sama halnya Shopee, website ini juga menyediakan berbagai
produk yang akan dijual kepada pelanggan, yang di lengkapi dengan
jumlah barang pada setiap barangnya.
Selain itu, website ini mengharuskan pelanggan untuk memiliki
akun agar dapat masuk dalam website sehingga dapat memudahkan pihak
Belanja dalam melakukan proses jual-beli, sampai pengiriman produk.
Perlu di ketahui informasi yang ada di dalam website ini
merupakan data dan identitas palsu, pembahasan lebih lengkap meliputi
struktur direktori, tampilan halaman beserta bagian kode php dan koneksi
ke basis data marlaDB.
Penulis juga menggunakan Extention PHP MySqli, yang dimana
MYSQLI merupakan kependekan dari MYSQL Improved extension,
extension PHP ini merupakan versi perbaikan dan penambahan dari
extension MYSQL sebelumnya yang umum digunakan. Extension PHP
MYSQLI dibuat dengan tujuan untuk mendukung fitur-fitur terbaru dari
MYSQL server versi 4.1 ke atas. Dan extention MySqli ini lebih aman dari
versi sebelumnya yakni MySql.
B. Struktur Direktori
belanja_aja
a. Admin
1) Img
a) Arda.jpeg
b) Mia.jpeg
c) Shidqi.jpg
2) Data_pembelian_admin.php
3) Delete.php
4) Header_admin.php
5) Index.php
6) Logout.php
7) Tambah.php
8) Tambah_data.php
9) Tentang_kami.php
b. animate
c. css
d. Fontawesome-free
e. Js
f. 1324.png
g. Config.php
h. Header.php
i. Icon.png
j. Index.php
k. Login.php
l. Registrasi.php
m. Registrasi_save.php
C. Kode php
a. Config.php
<?php
// variabel $koneksi melakukan koneksi ke databse mysqli
parameter pertama adalah nama host, lalu username databse, lalu
password database, dan yang terakhir adalah nama dari database yang
kita buat
$koneksi = mysqli_connect("localhost", "root", "", "belanja_aja");
<script src="js/bootstrap.bundle.js"></script>
<script src="js/jquery.js"></script>
<script src="js/jquery.slim.js"></script>
<script src="js/bootstrap.js"></script>
c. Index.php
<!-- digunakan untuk memanggil header.php yang berisikan link
css, js serta file config.php yang melakukan koneksi ke dalam
database -->
<?php include 'header.php'; ?>
<title>Halaman Login</title>
</head>
</div>
</div>
</div>
</body>
</html>
<script type="text/javascript">
function validasi() {
// sebuah function untuk membuat validasi dari form yang
ada
</script>
d. Login.php
<?php
include 'config.php';
// Fungsi ini akan menangkap data dari hasil perintah query dan
membentuknya ke dalam array asosiatif dan array numerik.
$user = mysqli_fetch_array($data);
// jika banyaknya lebih dari 0, brrti ada data yang cocok dari
inputan user dengan database yang ada
if($cek > 0){
// kita membuat sebuah session yang akan di bawa ke dalam
halaman admin nanti, yang berupa session['name'],
session['username'], dan session['status']
$_SESSION['name'] = $user['nama'];
$_SESSION['username'] = $username;
$_SESSION['status'] = "login";
// jika tidak cocok antara inputan user dan database. maka akan
kembali ke dalam index.php dan membawa variabel pesan yang berisi
gagal melalui url
else{
header("location:index.php?pesan=gagal");
}
?>
e. Regirstrasi.php
<?php include 'header.php'; ?>
<title>Halaman Registrasi</title>
</head>
<body class="bg-blue">
<div class="container">
<div class="col-lg-6">
<div class="mx-auto">
<div class="card-body p-0">
<!-- Nested Row within Card Body -->
<div class="row">
<div class="col-lg">
<div class="pt-2 pl-5 pr-5 text-center">
<img class="animated rollIn slow
rounded-circle w-25 mb-3" src="1324.png">
<div class="form-group
animated bounceInDown slow delay-1s">
<input type="text"
class="form-control form-control-user" id="username"
name="username" placeholder="Masukkan Username Anda...">
</div>
<div class="form-group
animated bounceInDown delay-2s">
<input type="password"
class="form-control form-control-user" id="password"
name="password" placeholder="Masukkan Sandi Anda...">
</div>
<button type="submit"
class="animated lightSpeedIn slow delay-2s btn untuk-login btn-
block text-white">
Regsitrasi
</button>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
<script type="text/javascript">
function validasi() {
var username =
document.getElementById("username").value;
var password =
document.getElementById("password").value;
if (username != "" && password!="") {
return true;
}else{
alert('Username dan Password harus di isi !');
return false;
}
}
</script>
f. Registrasi_save.php
<?php
include 'config.php';
<body>
<!-- mr untuk mengatur margin right ml margin left -->
<div class="mr-5 ml-5">
<h1 class="animated fadeInDown slow text-center mt-2
text-pink bayangan2">Data Pembelian User</h1>
<td class="text-center"
width="10px">
<!-- mencetak
variabel i yang dimulai dari 1 hingga n tabel -->
<?= $i ?>
</td>
<td width="100px">
<!-- mencetak
variabel beli yang di dapat dari variabel pembelian yang berisikan
select dari database pembelian. lalu kita panggil key dari array
assosiative nya, yaitu field tanggal yang ada di dalam database -->
<?= $beli['tanggal'] ?>
</td>
<td width="100px">
<?=
$beli['nama_pembeli'] ?>
</td>
<td width="100px">
<?= $beli['alamat'] ?>
</td>
<td width="100px">
<?= $beli['pesanan'] ?
>
</td>
<td width="100px">
<?=
$beli['quantitas'] ?>
</td>
<td width="100px">
<!-- number_format
adalah sebuah function yang disediakan oleh php untuk membuat
tampilan dari angka kita menjadi lebih rapi dengan bantuan titik dan
koma -->
Rp. <?=
number_format($beli['harga'], 0, ',', '.') ?>
</td>
<td width="100px">
Rp. <?=
number_format($beli['total'], 0, ',', '.') ?>
</td>
<td width="100px"
class="text-center">
<?=
$beli['komentar'] ?>
</td>
<td width="40px"
class="text-center">
<?= $beli['rating'] ?>
</td>
<td width="30px"
class="text-center">
<!-- sebuah icon
delete yang akan menuju ke file delete.php jika ditekan, lalu saat
ditekan dia akan membawa data melalui url dengan menggunakan
tanda tanya. lalu kita membuat variabel baru bernama id, yang isinya
adalah dari $beli['id'] -->
<a href="delete.php?
id=<?= $beli['id']; ?>" class="btn btn-small text-white"><i class="fas
fa-trash"></i></a>
</td>
</tr>
header("location:data_pembelian_admin.php");
?>
i. Header_admin.php
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="../css/bootstrap-
grid.css">
<link rel="stylesheet" type="text/css" href="../css/bootstrap-
reboot.css">
<link rel="stylesheet" type="text/css" href="../css/bootstrap.css">
<link rel="stylesheet" type="text/css"
href="../animate/animate.css">
<script src="../js/bootstrap.bundle.js"></script>
<script src="../js/jquery.js"></script>
<script src="../js/jquery.slim.js"></script>
<script src="../js/bootstrap.js"></script>
<title>Halaman Admin</title>
<?php
// mengaktifkan session
session_start();
require '../config.php';
?>
<nav class="navbar navbar-expand-lg navbar-light bg-blue">
<body>
<div class="container">
<!-- panggil session name -->
<h1 class="animated fadeInDown slow text-center mt-2
text-pink bayangan2">Selamat Datang <?= $_SESSION['name'] ?> di
Sistem Manajemen Toko</h1>
<div class="text-center">
<img width="70%" height="45%" class="animated
fadeInUp slow" src="../icon.png">
</div>
</div>
</body>
</html>
k. Logout.php
<?php
// kita masih memulai session yang kita bawa tadi, agar sessionnya
bisa kita hancurkan
session_start();
// lalu hancurkan session yang ada, agar tidak bisa masuk ke dalam
menu yang harus login terlebih dahulu
session_destroy();
header("location:../index.php");
?>
l. Tambah.php
<?php
include '../config.php';
// jika ada nilai di dalam checkbox bayar. maka variabel bayar akan
bernilai 1. jika tidak akan bernilai 0
if(isset($_POST['bayar']) ) {
$bayar = 1;
}
else{
$bayar = 0;
}
header("location:data_pembelian_admin.php");
?>
m. Tambah_data.php
<?php
include 'header_admin.php';
?>
<body>
<div class="container mb-4">
<h1 class="animated fadeInDown slow text-center mt-2
text-pink bayangan2">Simulasi Pembelian User</h1>
<form action="tambah.php" method="post">
<div class="form-group">
<label for="id_nama_pembeli">Nama
Pembeli*</label>
<textarea id="id_nama_pembeli"
class="form-control" name="nama_pembeli" placeholder="Masukkan
Nama Pembeli"></textarea>
</div>
<div class="form-group">
<label for="id_alamat">alamat
Pembeli*</label>
<textarea id="id_alamat" class="form-
control" name="alamat" placeholder="Masukkan Alamat
Pembeli"></textarea>
</div>
<div class="form-group">
<label for="id_pesanan">Pesanan
Pembeli*</label>
<textarea id="id_pesanan" class="form-
control" name="pesanan" placeholder="Masukkan Pesanan
Pembeli"></textarea>
</div>
<div class="form-group">
<label for="id_quantitas">quantitas
Pembeli*</label>
<input type="number" id="id_quantitas"
class="form-control" name="quantitas" placeholder="Masukkan
quantitas Pembeli"></input>
</div>
<div class="form-group">
<label for="id_harga">harga
Pembeli*</label>
<input type="number" id="id_harga"
class="form-control" name="harga" placeholder="Masukkan harga
Pembeli"></input>
</div>
<div class="form-group">
<label for="id_komentar">komentar
Pembeli*</label>
<textarea id="id_komentar" class="form-
control"name="komentar" placeholder="Masukkan komentar
Pembeli"></textarea>
</div>
<div class="form-group">
<label for="id_rating">rating
Pembeli*</label>
<input type="number" id="id_rating"
class="form-control"name="rating" placeholder="Masukkan rating
Pembeli"></input>
</div>
<body>
<div class="container mb-4 text-pink">
</li>
<li class="animated bounceInLeft slower
delay-2s">
<div class="row">
<label for="facebook" class="col-lg-
2">
<i class="fab fa-facebook-f fa-2x fa-
fw"></i>
</label>
<div class="col-lg-10">
<p class="font-weight-bold"
id="facebook"><?= $abt['fb'] ?></p>
</div>
</div>
</li>
</ul>
</div>
</div>
<?php endforeach ?>
</div>
</div>
</body>
</html>